grpc 1.64.3 → 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 (3205) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +372 -376
  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 +83 -20
  8. data/include/grpc/event_engine/extensible.h +5 -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 +19 -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 +10 -4
  22. data/include/grpc/impl/grpc_types.h +1 -2
  23. data/include/grpc/impl/slice_type.h +1 -2
  24. data/include/grpc/module.modulemap +1 -0
  25. data/include/grpc/passive_listener.h +62 -0
  26. data/include/grpc/status.h +1 -1
  27. data/include/grpc/support/alloc.h +1 -2
  28. data/include/grpc/support/atm.h +0 -13
  29. data/include/grpc/support/json.h +17 -18
  30. data/include/grpc/support/log.h +37 -64
  31. data/include/grpc/support/metrics.h +21 -6
  32. data/include/grpc/support/port_platform.h +31 -1
  33. data/include/grpc/support/sync_generic.h +2 -4
  34. data/include/grpc/support/sync_posix.h +1 -2
  35. data/include/grpc/support/time.h +1 -2
  36. data/src/core/call/request_buffer.cc +224 -0
  37. data/src/core/call/request_buffer.h +192 -0
  38. data/src/core/channelz/channel_trace.cc +6 -7
  39. data/src/core/channelz/channel_trace.h +6 -8
  40. data/src/core/channelz/channelz.cc +10 -12
  41. data/src/core/channelz/channelz.h +18 -39
  42. data/src/core/channelz/channelz_registry.cc +10 -18
  43. data/src/core/channelz/channelz_registry.h +4 -5
  44. data/src/core/client_channel/backup_poller.cc +25 -16
  45. data/src/core/client_channel/client_channel.cc +1415 -0
  46. data/src/core/client_channel/client_channel.h +245 -0
  47. data/src/core/client_channel/client_channel_args.h +21 -0
  48. data/src/core/client_channel/client_channel_factory.cc +2 -2
  49. data/src/core/client_channel/client_channel_factory.h +1 -2
  50. data/src/core/client_channel/client_channel_filter.cc +391 -981
  51. data/src/core/client_channel/client_channel_filter.h +32 -83
  52. data/src/core/client_channel/client_channel_internal.h +23 -9
  53. data/src/core/client_channel/client_channel_plugin.cc +4 -18
  54. data/src/core/client_channel/client_channel_service_config.cc +3 -4
  55. data/src/core/client_channel/client_channel_service_config.h +12 -14
  56. data/src/core/client_channel/config_selector.h +21 -22
  57. data/src/core/client_channel/connector.h +3 -3
  58. data/src/core/client_channel/direct_channel.cc +83 -0
  59. data/src/core/client_channel/direct_channel.h +101 -0
  60. data/src/core/client_channel/dynamic_filters.cc +16 -14
  61. data/src/core/client_channel/dynamic_filters.h +9 -10
  62. data/src/core/client_channel/global_subchannel_pool.cc +2 -2
  63. data/src/core/client_channel/global_subchannel_pool.h +2 -3
  64. data/src/core/client_channel/lb_metadata.cc +119 -0
  65. data/src/core/client_channel/lb_metadata.h +55 -0
  66. data/src/core/client_channel/load_balanced_call_destination.cc +273 -0
  67. data/src/core/client_channel/load_balanced_call_destination.h +48 -0
  68. data/src/core/client_channel/local_subchannel_pool.cc +2 -5
  69. data/src/core/client_channel/local_subchannel_pool.h +1 -1
  70. data/src/core/client_channel/retry_filter.cc +9 -18
  71. data/src/core/client_channel/retry_filter.h +7 -16
  72. data/src/core/client_channel/retry_filter_legacy_call_data.cc +219 -331
  73. data/src/core/client_channel/retry_filter_legacy_call_data.h +18 -21
  74. data/src/core/client_channel/retry_interceptor.cc +408 -0
  75. data/src/core/client_channel/retry_interceptor.h +157 -0
  76. data/src/core/client_channel/retry_service_config.cc +11 -14
  77. data/src/core/client_channel/retry_service_config.h +22 -11
  78. data/src/core/client_channel/retry_throttle.cc +34 -20
  79. data/src/core/client_channel/retry_throttle.h +6 -9
  80. data/src/core/client_channel/subchannel.cc +324 -239
  81. data/src/core/client_channel/subchannel.h +52 -44
  82. data/src/core/client_channel/subchannel_interface_internal.h +1 -1
  83. data/src/core/client_channel/subchannel_pool_interface.cc +1 -5
  84. data/src/core/client_channel/subchannel_pool_interface.h +4 -7
  85. data/src/core/client_channel/subchannel_stream_client.cc +43 -60
  86. data/src/core/client_channel/subchannel_stream_client.h +13 -17
  87. data/src/core/config/config_vars.cc +152 -0
  88. data/src/core/config/config_vars.h +129 -0
  89. data/src/core/config/config_vars_non_generated.cc +49 -0
  90. data/src/core/config/core_configuration.cc +111 -0
  91. data/src/core/config/core_configuration.h +242 -0
  92. data/src/core/config/load_config.cc +78 -0
  93. data/src/core/config/load_config.h +54 -0
  94. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +25 -37
  95. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +9 -7
  96. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
  97. data/src/core/ext/filters/census/grpc_context.cc +7 -10
  98. data/src/core/ext/filters/channel_idle/idle_filter_state.cc +1 -2
  99. data/src/core/ext/filters/channel_idle/idle_filter_state.h +0 -1
  100. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +37 -48
  101. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +12 -8
  102. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +23 -33
  103. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +9 -8
  104. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +3 -4
  105. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +7 -10
  106. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +198 -0
  107. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +97 -0
  108. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +80 -0
  109. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +86 -0
  110. data/src/core/ext/filters/http/client/http_client_filter.cc +14 -13
  111. data/src/core/ext/filters/http/client/http_client_filter.h +6 -4
  112. data/src/core/ext/filters/http/client_authority_filter.cc +14 -18
  113. data/src/core/ext/filters/http/client_authority_filter.h +8 -6
  114. data/src/core/ext/filters/http/http_filters_plugin.cc +1 -2
  115. data/src/core/ext/filters/http/message_compress/compression_filter.cc +64 -64
  116. data/src/core/ext/filters/http/message_compress/compression_filter.h +24 -15
  117. data/src/core/ext/filters/http/server/http_server_filter.cc +18 -20
  118. data/src/core/ext/filters/http/server/http_server_filter.h +6 -4
  119. data/src/core/ext/filters/message_size/message_size_filter.cc +43 -55
  120. data/src/core/ext/filters/message_size/message_size_filter.h +30 -29
  121. data/src/core/ext/filters/rbac/rbac_filter.cc +8 -18
  122. data/src/core/ext/filters/rbac/rbac_filter.h +8 -7
  123. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +19 -13
  124. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +3 -5
  125. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +14 -21
  126. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +8 -7
  127. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +3 -4
  128. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +8 -10
  129. data/src/core/ext/transport/chttp2/alpn/alpn.cc +2 -4
  130. data/src/core/ext/transport/chttp2/alpn/alpn.h +1 -2
  131. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +76 -109
  132. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +8 -13
  133. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +999 -375
  134. data/src/core/ext/transport/chttp2/server/chttp2_server.h +222 -13
  135. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +22 -34
  136. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -3
  137. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +4 -7
  138. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -2
  139. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.cc +53 -0
  140. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.h +72 -0
  141. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +706 -555
  142. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +22 -23
  143. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +2 -3
  144. data/src/core/ext/transport/chttp2/transport/decode_huff.h +4 -4
  145. data/src/core/ext/transport/chttp2/transport/flow_control.cc +9 -14
  146. data/src/core/ext/transport/chttp2/transport/flow_control.h +5 -10
  147. data/src/core/ext/transport/chttp2/transport/frame.cc +24 -7
  148. data/src/core/ext/transport/chttp2/transport/frame.h +16 -7
  149. data/src/core/ext/transport/chttp2/transport/frame_data.cc +19 -20
  150. data/src/core/ext/transport/chttp2/transport/frame_data.h +4 -5
  151. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +11 -14
  152. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -2
  153. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +14 -19
  154. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -2
  155. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +17 -18
  156. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +6 -5
  157. data/src/core/ext/transport/chttp2/transport/frame_security.cc +80 -0
  158. data/src/core/ext/transport/chttp2/transport/frame_security.h +44 -0
  159. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +41 -25
  160. data/src/core/ext/transport/chttp2/transport/frame_settings.h +3 -4
  161. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +28 -7
  162. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +4 -3
  163. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +2 -2
  164. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +19 -21
  165. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +19 -15
  166. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +2 -3
  167. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +4 -5
  168. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +2 -4
  169. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +6 -9
  170. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +55 -58
  171. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +10 -13
  172. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +41 -16
  173. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +29 -10
  174. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +14 -6
  175. data/src/core/ext/transport/chttp2/transport/http2_settings.h +13 -7
  176. data/src/core/ext/transport/chttp2/transport/internal.h +86 -83
  177. data/src/core/ext/transport/chttp2/transport/legacy_frame.h +1 -0
  178. data/src/core/ext/transport/chttp2/transport/parsing.cc +135 -121
  179. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +4 -4
  180. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +3 -3
  181. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +4 -7
  182. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +5 -9
  183. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +35 -20
  184. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +9 -10
  185. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +14 -16
  186. data/src/core/ext/transport/chttp2/transport/stream_lists.h +65 -0
  187. data/src/core/ext/transport/chttp2/transport/varint.cc +6 -6
  188. data/src/core/ext/transport/chttp2/transport/varint.h +1 -3
  189. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +2 -3
  190. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +3 -4
  191. data/src/core/ext/transport/chttp2/transport/writing.cc +149 -130
  192. data/src/core/ext/transport/inproc/inproc_transport.cc +151 -71
  193. data/src/core/ext/transport/inproc/inproc_transport.h +1 -3
  194. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +133 -129
  195. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +0 -2
  196. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +46 -15
  197. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +40 -18
  198. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +10 -4
  199. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +59 -27
  200. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +36 -18
  201. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +9 -4
  202. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +50 -15
  203. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +44 -22
  204. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +10 -4
  205. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +190 -55
  206. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +162 -84
  207. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +24 -4
  208. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +11 -5
  209. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +14 -4
  210. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +7 -4
  211. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +19 -6
  212. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +18 -8
  213. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +7 -4
  214. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +11 -10
  215. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +7 -1
  216. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +6 -4
  217. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +8 -7
  218. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +7 -1
  219. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +6 -4
  220. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +8 -7
  221. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +7 -1
  222. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +6 -4
  223. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +145 -82
  224. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +40 -27
  225. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +7 -4
  226. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +9 -6
  227. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +10 -4
  228. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +6 -4
  229. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +9 -8
  230. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +7 -1
  231. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +5 -4
  232. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +18 -8
  233. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +13 -6
  234. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +6 -4
  235. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +91 -34
  236. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +114 -48
  237. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +21 -4
  238. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +544 -254
  239. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +265 -149
  240. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +29 -4
  241. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +41 -14
  242. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +31 -17
  243. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +8 -4
  244. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +529 -141
  245. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +270 -143
  246. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +31 -4
  247. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +12 -7
  248. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +11 -5
  249. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +6 -4
  250. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +171 -27
  251. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +54 -27
  252. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +6 -4
  253. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +127 -35
  254. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +125 -63
  255. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +20 -4
  256. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +67 -27
  257. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +60 -26
  258. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +13 -4
  259. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +11 -6
  260. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +11 -5
  261. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +6 -4
  262. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +871 -72
  263. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +346 -75
  264. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +41 -4
  265. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +67 -25
  266. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +57 -27
  267. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +12 -4
  268. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +8 -5
  269. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +10 -4
  270. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +6 -4
  271. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +9 -6
  272. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +10 -4
  273. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +6 -4
  274. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +11 -5
  275. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +14 -4
  276. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +7 -4
  277. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +201 -62
  278. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +120 -53
  279. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +19 -4
  280. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +196 -62
  281. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +95 -53
  282. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +14 -4
  283. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +13 -5
  284. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +11 -5
  285. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.h +6 -4
  286. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +10 -7
  287. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +10 -4
  288. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +6 -4
  289. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +322 -76
  290. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +162 -84
  291. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +21 -4
  292. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +10 -7
  293. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +14 -4
  294. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +7 -4
  295. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +15 -7
  296. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +15 -5
  297. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +7 -4
  298. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb.h +151 -0
  299. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.c +60 -0
  300. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.h +32 -0
  301. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +244 -31
  302. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +79 -21
  303. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +13 -4
  304. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +23 -11
  305. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +17 -7
  306. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +7 -4
  307. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +11 -6
  308. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +11 -5
  309. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +6 -4
  310. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +42 -11
  311. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +35 -17
  312. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +9 -4
  313. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +106 -34
  314. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +69 -37
  315. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +12 -4
  316. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +281 -37
  317. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +81 -27
  318. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +12 -4
  319. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +8 -5
  320. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +10 -4
  321. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +6 -4
  322. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +142 -47
  323. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +90 -47
  324. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +15 -4
  325. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +92 -129
  326. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +66 -57
  327. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +11 -5
  328. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +178 -13
  329. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +46 -14
  330. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +6 -4
  331. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +14 -7
  332. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +16 -6
  333. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +7 -4
  334. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +14 -9
  335. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +11 -5
  336. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +6 -4
  337. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +51 -22
  338. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +58 -24
  339. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +13 -4
  340. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +70 -22
  341. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +71 -29
  342. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +15 -4
  343. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +311 -38
  344. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +141 -63
  345. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +18 -4
  346. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +61 -13
  347. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +33 -19
  348. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +8 -4
  349. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +961 -237
  350. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +567 -273
  351. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +67 -4
  352. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +20 -10
  353. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +22 -8
  354. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +8 -4
  355. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +100 -35
  356. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +95 -45
  357. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +17 -4
  358. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +118 -16
  359. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +43 -12
  360. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +8 -4
  361. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +9 -6
  362. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +10 -4
  363. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +6 -4
  364. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +12 -7
  365. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +17 -7
  366. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +7 -4
  367. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +10 -7
  368. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +10 -4
  369. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +6 -4
  370. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +20 -8
  371. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +13 -7
  372. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +6 -4
  373. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +8 -5
  374. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +10 -4
  375. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +6 -4
  376. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +17 -10
  377. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +18 -8
  378. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +7 -4
  379. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +5 -6
  380. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +3 -2
  381. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.h +5 -5
  382. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +19 -10
  383. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +19 -9
  384. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +7 -4
  385. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +14 -11
  386. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +10 -4
  387. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +6 -4
  388. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +216 -102
  389. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +124 -57
  390. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +21 -4
  391. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +5 -4
  392. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +7 -1
  393. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +6 -4
  394. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +24 -11
  395. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +33 -11
  396. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +10 -4
  397. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +42 -22
  398. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +27 -13
  399. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +8 -4
  400. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +444 -0
  401. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +135 -0
  402. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +38 -0
  403. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +56 -13
  404. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +29 -13
  405. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +7 -4
  406. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +29 -12
  407. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +20 -10
  408. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +7 -4
  409. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +13 -8
  410. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +17 -7
  411. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +7 -4
  412. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +343 -134
  413. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +209 -121
  414. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +26 -4
  415. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +8 -5
  416. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +10 -4
  417. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +6 -4
  418. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +83 -10
  419. 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 +28 -11
  420. 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
  421. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +31 -14
  422. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +39 -17
  423. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +10 -4
  424. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +6 -5
  425. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +7 -1
  426. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +6 -4
  427. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +22 -11
  428. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +14 -8
  429. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +6 -4
  430. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +8 -5
  431. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +10 -4
  432. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +6 -4
  433. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb.h +105 -0
  434. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.c +51 -0
  435. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.h +32 -0
  436. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +5 -4
  437. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +3 -1
  438. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.h +5 -4
  439. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +170 -31
  440. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +83 -37
  441. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +14 -4
  442. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +25 -12
  443. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +27 -13
  444. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +8 -4
  445. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +214 -63
  446. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +100 -61
  447. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +12 -4
  448. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +51 -13
  449. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +23 -11
  450. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +7 -4
  451. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +58 -20
  452. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +44 -26
  453. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +9 -4
  454. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +5 -4
  455. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +7 -1
  456. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +6 -4
  457. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +373 -58
  458. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +144 -61
  459. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +21 -4
  460. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +18 -8
  461. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +18 -8
  462. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +7 -4
  463. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +67 -25
  464. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +47 -25
  465. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +10 -4
  466. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +10 -7
  467. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +10 -4
  468. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +6 -4
  469. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +16 -6
  470. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +26 -8
  471. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +9 -4
  472. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +142 -0
  473. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +55 -0
  474. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +32 -0
  475. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +42 -6
  476. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +16 -7
  477. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +6 -4
  478. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +10 -9
  479. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +23 -1
  480. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +10 -4
  481. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +16 -8
  482. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +15 -5
  483. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +7 -4
  484. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +13 -5
  485. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +11 -5
  486. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +6 -4
  487. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +9 -6
  488. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +10 -4
  489. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +6 -4
  490. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +8 -5
  491. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +10 -4
  492. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +6 -4
  493. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +16 -9
  494. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +24 -10
  495. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +8 -4
  496. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +5 -4
  497. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +11 -1
  498. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +7 -4
  499. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +51 -10
  500. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +30 -9
  501. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +7 -4
  502. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +14 -6
  503. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +15 -5
  504. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +7 -4
  505. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +30 -12
  506. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +32 -14
  507. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +9 -4
  508. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +24 -10
  509. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +40 -10
  510. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +12 -4
  511. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +30 -17
  512. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +33 -11
  513. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +10 -4
  514. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +12 -7
  515. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +19 -5
  516. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +8 -4
  517. data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +5 -4
  518. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +3 -1
  519. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.h +5 -4
  520. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +6 -5
  521. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +7 -1
  522. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +6 -4
  523. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +8 -7
  524. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +11 -1
  525. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +7 -4
  526. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +11 -10
  527. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +15 -1
  528. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +8 -4
  529. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +14 -9
  530. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +15 -5
  531. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +7 -4
  532. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +5 -4
  533. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +3 -1
  534. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.h +5 -4
  535. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +8 -7
  536. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +7 -1
  537. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +6 -4
  538. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +12 -7
  539. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +11 -5
  540. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +6 -4
  541. data/src/core/ext/upb-gen/google/api/annotations.upb.h +17 -7
  542. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +5 -2
  543. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +5 -4
  544. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +135 -36
  545. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +121 -56
  546. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +18 -4
  547. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +525 -69
  548. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +202 -68
  549. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +23 -4
  550. data/src/core/ext/upb-gen/google/api/http.upb.h +30 -16
  551. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +22 -8
  552. data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +8 -4
  553. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +12 -6
  554. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +10 -4
  555. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +6 -4
  556. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +8 -6
  557. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +7 -1
  558. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +6 -4
  559. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +583 -181
  560. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +376 -215
  561. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +56 -21
  562. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +8 -6
  563. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +7 -1
  564. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +6 -4
  565. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +6 -4
  566. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +7 -1
  567. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +6 -4
  568. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +33 -10
  569. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +32 -14
  570. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +9 -4
  571. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +8 -6
  572. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +7 -1
  573. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +6 -4
  574. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +15 -13
  575. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +39 -1
  576. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +14 -4
  577. data/src/core/ext/upb-gen/google/rpc/status.upb.h +12 -6
  578. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +10 -4
  579. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +6 -4
  580. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +19 -10
  581. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +15 -5
  582. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +7 -4
  583. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +98 -39
  584. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +87 -37
  585. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +17 -4
  586. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +14 -8
  587. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +15 -5
  588. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +7 -4
  589. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +8 -6
  590. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +11 -1
  591. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +7 -4
  592. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +47 -22
  593. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +58 -20
  594. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +14 -4
  595. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +16 -8
  596. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +18 -4
  597. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +8 -4
  598. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +72 -19
  599. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +60 -22
  600. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +14 -4
  601. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +69 -23
  602. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +31 -12
  603. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +8 -4
  604. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +19 -9
  605. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +13 -6
  606. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +6 -4
  607. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +6 -5
  608. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +4 -1
  609. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +5 -4
  610. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +19 -9
  611. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +13 -6
  612. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +6 -4
  613. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +18 -8
  614. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +13 -6
  615. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +6 -4
  616. data/src/core/ext/upb-gen/validate/validate.upb.h +264 -172
  617. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +185 -87
  618. data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +29 -5
  619. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +69 -23
  620. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +31 -12
  621. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +8 -4
  622. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +19 -9
  623. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +13 -6
  624. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +6 -4
  625. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +6 -5
  626. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +4 -1
  627. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +5 -4
  628. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +46 -18
  629. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +32 -11
  630. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +9 -4
  631. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +18 -8
  632. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +13 -6
  633. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +6 -4
  634. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +6 -5
  635. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +7 -1
  636. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +6 -4
  637. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +9 -6
  638. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +10 -4
  639. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +6 -4
  640. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +16 -9
  641. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +18 -8
  642. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +7 -4
  643. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +11 -4
  644. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +14 -4
  645. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +7 -4
  646. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +9 -6
  647. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +10 -4
  648. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +6 -4
  649. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +12 -7
  650. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +11 -5
  651. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +6 -4
  652. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +21 -11
  653. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +18 -8
  654. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +7 -4
  655. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +11 -8
  656. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +10 -4
  657. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +6 -4
  658. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +29 -10
  659. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +24 -6
  660. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +9 -4
  661. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +8 -5
  662. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +10 -4
  663. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +6 -4
  664. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +9 -6
  665. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +10 -4
  666. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +6 -4
  667. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +13 -5
  668. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +17 -7
  669. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +7 -4
  670. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +5 -4
  671. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +7 -1
  672. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +6 -4
  673. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +19 -6
  674. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +18 -8
  675. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +7 -4
  676. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +81 -22
  677. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +85 -43
  678. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +15 -4
  679. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +44 -7
  680. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +48 -22
  681. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +11 -4
  682. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +9 -6
  683. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +14 -4
  684. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +7 -4
  685. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +18 -10
  686. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +17 -7
  687. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +7 -4
  688. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +17 -8
  689. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +19 -9
  690. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +7 -4
  691. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +12 -10
  692. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +15 -1
  693. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +8 -4
  694. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +9 -6
  695. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +10 -4
  696. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +6 -4
  697. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.c +2 -1
  698. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +5 -4
  699. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.c +2 -1
  700. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +5 -4
  701. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.c +2 -1
  702. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +5 -4
  703. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.c +13 -11
  704. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +5 -4
  705. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.c +2 -1
  706. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +5 -4
  707. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.c +2 -1
  708. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +5 -4
  709. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.c +2 -1
  710. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +5 -4
  711. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.c +2 -1
  712. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +5 -4
  713. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.c +2 -1
  714. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +5 -4
  715. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +90 -82
  716. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +5 -4
  717. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.c +2 -1
  718. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +5 -4
  719. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.c +2 -1
  720. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +5 -4
  721. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.c +2 -1
  722. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +5 -4
  723. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +63 -61
  724. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +5 -4
  725. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +223 -211
  726. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +10 -4
  727. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +2 -1
  728. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +5 -4
  729. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +419 -393
  730. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +10 -4
  731. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.c +2 -1
  732. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +5 -4
  733. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.c +116 -106
  734. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +5 -4
  735. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +2 -1
  736. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +5 -4
  737. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +2 -1
  738. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +5 -4
  739. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.c +2 -1
  740. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +5 -4
  741. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +201 -147
  742. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +35 -4
  743. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.c +12 -12
  744. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +5 -4
  745. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.c +2 -1
  746. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +5 -4
  747. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.c +2 -1
  748. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +5 -4
  749. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.c +2 -1
  750. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +5 -4
  751. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +175 -165
  752. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +5 -4
  753. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.c +199 -188
  754. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +5 -4
  755. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.c +2 -1
  756. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.h +5 -4
  757. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.c +2 -1
  758. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +5 -4
  759. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +272 -255
  760. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +5 -4
  761. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +2 -1
  762. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +5 -4
  763. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.c +2 -1
  764. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +5 -4
  765. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.c +46 -0
  766. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.h +33 -0
  767. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.c +31 -20
  768. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +20 -4
  769. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +2 -1
  770. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +5 -4
  771. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.c +2 -1
  772. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +5 -4
  773. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.c +2 -1
  774. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +5 -4
  775. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +41 -37
  776. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +5 -4
  777. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.c +124 -94
  778. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +10 -4
  779. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.c +2 -1
  780. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +5 -4
  781. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +43 -40
  782. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +5 -4
  783. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.c +60 -66
  784. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +5 -9
  785. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +75 -56
  786. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +5 -4
  787. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.c +2 -1
  788. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +5 -4
  789. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +2 -1
  790. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +5 -4
  791. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +2 -1
  792. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +5 -4
  793. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +51 -49
  794. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +5 -4
  795. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +119 -97
  796. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +10 -4
  797. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +2 -1
  798. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +5 -4
  799. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +922 -895
  800. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +15 -4
  801. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.c +2 -1
  802. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +5 -4
  803. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +2 -1
  804. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +5 -4
  805. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.c +32 -21
  806. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +10 -4
  807. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.c +20 -18
  808. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +5 -4
  809. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.c +2 -1
  810. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +5 -4
  811. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.c +2 -1
  812. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +5 -4
  813. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +2 -1
  814. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +5 -4
  815. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.c +2 -1
  816. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +5 -4
  817. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.c +2 -1
  818. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +5 -4
  819. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.c +17 -19
  820. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +5 -4
  821. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.c +2 -1
  822. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +5 -4
  823. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +23 -21
  824. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +5 -4
  825. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.c +147 -143
  826. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +5 -4
  827. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +2 -1
  828. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +5 -4
  829. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +2 -1
  830. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +5 -4
  831. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +2 -1
  832. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +5 -4
  833. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.c +87 -0
  834. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.h +48 -0
  835. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +38 -34
  836. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +5 -4
  837. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.c +2 -1
  838. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +5 -4
  839. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +2 -1
  840. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +5 -4
  841. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +465 -459
  842. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -4
  843. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +2 -1
  844. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +5 -4
  845. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.c +50 -0
  846. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.h +33 -0
  847. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +2 -1
  848. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +5 -4
  849. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +96 -88
  850. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +10 -4
  851. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +2 -1
  852. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +5 -4
  853. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +204 -192
  854. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +5 -4
  855. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +21 -18
  856. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +5 -4
  857. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +2 -1
  858. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +5 -4
  859. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.c +2 -1
  860. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +5 -4
  861. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.c +150 -136
  862. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +10 -4
  863. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.c +2 -1
  864. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +5 -4
  865. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.c +25 -23
  866. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +5 -4
  867. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +2 -1
  868. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +5 -4
  869. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.c +2 -1
  870. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +5 -4
  871. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.c +41 -0
  872. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.h +33 -0
  873. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +28 -20
  874. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +5 -4
  875. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.c +2 -1
  876. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +5 -4
  877. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.c +2 -1
  878. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +5 -4
  879. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.c +2 -1
  880. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +5 -4
  881. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.c +2 -1
  882. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +5 -4
  883. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.c +2 -1
  884. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +5 -4
  885. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.c +2 -1
  886. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +5 -4
  887. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.c +2 -1
  888. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +5 -4
  889. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.c +41 -34
  890. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +5 -4
  891. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.c +2 -1
  892. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +5 -4
  893. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.c +2 -1
  894. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +5 -4
  895. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.c +2 -1
  896. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +5 -4
  897. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +2 -1
  898. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +5 -4
  899. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.c +2 -1
  900. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +5 -4
  901. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.c +2 -1
  902. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +5 -4
  903. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.c +2 -1
  904. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +5 -4
  905. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.c +2 -1
  906. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +5 -4
  907. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.c +2 -1
  908. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +5 -4
  909. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.c +2 -1
  910. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +5 -4
  911. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.c +2 -1
  912. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +5 -4
  913. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.c +2 -1
  914. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +5 -4
  915. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.c +2 -1
  916. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +5 -4
  917. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.c +2 -1
  918. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +5 -4
  919. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +110 -108
  920. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +5 -4
  921. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +103 -79
  922. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +15 -4
  923. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +2 -1
  924. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +5 -4
  925. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +2 -1
  926. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +5 -4
  927. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.c +2 -1
  928. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +5 -4
  929. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +485 -458
  930. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +10 -4
  931. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.c +2 -1
  932. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +5 -4
  933. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.c +2 -1
  934. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +5 -4
  935. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.c +2 -1
  936. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +5 -4
  937. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.c +2 -1
  938. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +5 -4
  939. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.c +2 -1
  940. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +5 -4
  941. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.c +2 -1
  942. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +5 -4
  943. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +2 -1
  944. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +5 -4
  945. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +2 -1
  946. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +5 -4
  947. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +2 -1
  948. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +5 -4
  949. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +2 -1
  950. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +5 -4
  951. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +2 -1
  952. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +5 -4
  953. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +2 -1
  954. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +5 -4
  955. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.c +2 -1
  956. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +5 -4
  957. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.c +2 -1
  958. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +5 -4
  959. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.c +2 -1
  960. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +5 -4
  961. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.c +2 -1
  962. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +5 -4
  963. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.c +2 -1
  964. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +5 -4
  965. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.c +2 -1
  966. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +5 -4
  967. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.c +2 -1
  968. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +5 -4
  969. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.c +2 -1
  970. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +5 -4
  971. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.c +2 -1
  972. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +5 -4
  973. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.c +2 -1
  974. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +5 -4
  975. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.c +2 -1
  976. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +5 -4
  977. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.c +2 -1
  978. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +5 -4
  979. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.c +2 -1
  980. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +5 -4
  981. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.c +2 -1
  982. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +5 -4
  983. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +2 -1
  984. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +5 -4
  985. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.c +2 -1
  986. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +5 -4
  987. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +2 -1
  988. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +5 -4
  989. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.c +2 -1
  990. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +5 -4
  991. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +2 -1
  992. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +5 -4
  993. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.c +2 -1
  994. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +5 -4
  995. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.c +2 -1
  996. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +5 -4
  997. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +2 -1
  998. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +5 -4
  999. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +2 -1
  1000. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +5 -4
  1001. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.c +2 -1
  1002. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +5 -4
  1003. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.c +2 -1
  1004. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +5 -4
  1005. data/src/core/filter/blackboard.cc +33 -0
  1006. data/src/core/filter/blackboard.h +70 -0
  1007. data/src/core/filter/filter_args.h +112 -0
  1008. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.cc +13 -12
  1009. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.h +1 -1
  1010. data/src/core/handshaker/handshaker.cc +124 -159
  1011. data/src/core/handshaker/handshaker.h +58 -52
  1012. data/src/core/handshaker/handshaker_registry.cc +1 -2
  1013. data/src/core/handshaker/handshaker_registry.h +2 -2
  1014. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +120 -162
  1015. data/src/core/handshaker/http_connect/http_connect_handshaker.h +1 -1
  1016. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +61 -69
  1017. data/src/core/handshaker/http_connect/http_proxy_mapper.h +7 -8
  1018. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.cc +57 -0
  1019. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.h +46 -0
  1020. data/src/core/handshaker/proxy_mapper.h +6 -7
  1021. data/src/core/handshaker/proxy_mapper_registry.cc +7 -8
  1022. data/src/core/handshaker/proxy_mapper_registry.h +6 -7
  1023. data/src/core/handshaker/security/secure_endpoint.cc +97 -84
  1024. data/src/core/handshaker/security/secure_endpoint.h +6 -7
  1025. data/src/core/handshaker/security/security_handshaker.cc +168 -224
  1026. data/src/core/handshaker/security/security_handshaker.h +3 -4
  1027. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +54 -66
  1028. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.h +1 -1
  1029. data/src/core/lib/address_utils/parse_address.cc +30 -43
  1030. data/src/core/lib/address_utils/parse_address.h +2 -4
  1031. data/src/core/lib/address_utils/sockaddr_utils.cc +9 -12
  1032. data/src/core/lib/address_utils/sockaddr_utils.h +1 -3
  1033. data/src/core/lib/channel/call_finalization.h +2 -2
  1034. data/src/core/lib/channel/channel_args.cc +30 -36
  1035. data/src/core/lib/channel/channel_args.h +43 -29
  1036. data/src/core/lib/channel/channel_args_preconditioning.cc +2 -2
  1037. data/src/core/lib/channel/channel_args_preconditioning.h +4 -4
  1038. data/src/core/lib/channel/channel_stack.cc +13 -76
  1039. data/src/core/lib/channel/channel_stack.h +26 -61
  1040. data/src/core/lib/channel/channel_stack_builder.cc +2 -2
  1041. data/src/core/lib/channel/channel_stack_builder.h +3 -9
  1042. data/src/core/lib/channel/channel_stack_builder_impl.cc +5 -150
  1043. data/src/core/lib/channel/channel_stack_builder_impl.h +14 -4
  1044. data/src/core/lib/channel/connected_channel.cc +48 -690
  1045. data/src/core/lib/channel/promise_based_filter.cc +190 -260
  1046. data/src/core/lib/channel/promise_based_filter.h +214 -625
  1047. data/src/core/lib/channel/status_util.cc +2 -4
  1048. data/src/core/lib/channel/status_util.h +3 -3
  1049. data/src/core/lib/compression/compression.cc +9 -10
  1050. data/src/core/lib/compression/compression_internal.cc +14 -17
  1051. data/src/core/lib/compression/compression_internal.h +6 -8
  1052. data/src/core/lib/compression/message_compress.cc +9 -12
  1053. data/src/core/lib/debug/trace.cc +48 -66
  1054. data/src/core/lib/debug/trace.h +2 -97
  1055. data/src/core/lib/debug/trace_flags.cc +245 -0
  1056. data/src/core/lib/debug/trace_flags.h +132 -0
  1057. data/src/core/lib/debug/trace_impl.h +125 -0
  1058. data/src/core/lib/event_engine/ares_resolver.cc +158 -86
  1059. data/src/core/lib/event_engine/ares_resolver.h +19 -30
  1060. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +15 -20
  1061. data/src/core/lib/event_engine/cf_engine/cf_engine.h +3 -5
  1062. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +50 -38
  1063. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +6 -10
  1064. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +3 -5
  1065. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +27 -35
  1066. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +5 -9
  1067. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +7 -10
  1068. data/src/core/lib/event_engine/channel_args_endpoint_config.h +7 -9
  1069. data/src/core/lib/event_engine/common_closures.h +5 -7
  1070. data/src/core/lib/event_engine/default_event_engine.cc +69 -42
  1071. data/src/core/lib/event_engine/default_event_engine.h +27 -36
  1072. data/src/core/lib/event_engine/default_event_engine_factory.cc +8 -14
  1073. data/src/core/lib/event_engine/default_event_engine_factory.h +4 -6
  1074. data/src/core/lib/event_engine/event_engine.cc +37 -8
  1075. data/src/core/lib/event_engine/event_engine_context.h +4 -2
  1076. data/src/core/lib/event_engine/extensions/can_track_errors.h +4 -6
  1077. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +3 -6
  1078. data/src/core/lib/event_engine/extensions/supports_fd.h +29 -7
  1079. data/src/core/lib/event_engine/extensions/tcp_trace.h +40 -0
  1080. data/src/core/lib/event_engine/forkable.cc +9 -13
  1081. data/src/core/lib/event_engine/forkable.h +4 -18
  1082. data/src/core/lib/event_engine/grpc_polled_fd.h +5 -8
  1083. data/src/core/lib/event_engine/handle_containers.h +4 -7
  1084. data/src/core/lib/event_engine/memory_allocator_factory.h +5 -8
  1085. data/src/core/lib/event_engine/nameser.h +1 -1
  1086. data/src/core/lib/event_engine/poller.h +4 -6
  1087. data/src/core/lib/event_engine/posix.h +2 -4
  1088. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +25 -73
  1089. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +10 -13
  1090. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +21 -72
  1091. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +6 -9
  1092. data/src/core/lib/event_engine/posix_engine/event_poller.h +5 -8
  1093. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +6 -9
  1094. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +4 -6
  1095. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +6 -10
  1096. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +6 -8
  1097. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +3 -6
  1098. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +7 -11
  1099. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +4 -7
  1100. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +5 -8
  1101. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +4 -7
  1102. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +93 -89
  1103. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +13 -16
  1104. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +84 -62
  1105. data/src/core/lib/event_engine/posix_engine/posix_engine.h +20 -20
  1106. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +5 -7
  1107. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +27 -33
  1108. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +16 -17
  1109. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +24 -32
  1110. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +3 -6
  1111. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +49 -44
  1112. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +12 -14
  1113. data/src/core/lib/event_engine/posix_engine/timer.cc +9 -11
  1114. data/src/core/lib/event_engine/posix_engine/timer.h +9 -13
  1115. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +4 -7
  1116. data/src/core/lib/event_engine/posix_engine/timer_heap.h +4 -6
  1117. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +17 -28
  1118. data/src/core/lib/event_engine/posix_engine/timer_manager.h +9 -13
  1119. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +11 -17
  1120. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +27 -30
  1121. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +7 -10
  1122. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +4 -7
  1123. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +6 -9
  1124. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +4 -7
  1125. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +4 -6
  1126. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +4 -7
  1127. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +4 -6
  1128. data/src/core/lib/event_engine/query_extensions.h +4 -6
  1129. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +5 -9
  1130. data/src/core/lib/event_engine/resolved_address.cc +7 -9
  1131. data/src/core/lib/event_engine/resolved_address_internal.h +2 -4
  1132. data/src/core/lib/event_engine/shim.cc +3 -5
  1133. data/src/core/lib/event_engine/shim.h +2 -4
  1134. data/src/core/lib/event_engine/slice.cc +5 -10
  1135. data/src/core/lib/event_engine/slice_buffer.cc +3 -6
  1136. data/src/core/lib/event_engine/tcp_socket_utils.cc +15 -26
  1137. data/src/core/lib/event_engine/tcp_socket_utils.h +8 -10
  1138. data/src/core/lib/event_engine/thread_local.cc +2 -4
  1139. data/src/core/lib/event_engine/thread_local.h +3 -5
  1140. data/src/core/lib/event_engine/thread_pool/thread_count.cc +7 -11
  1141. data/src/core/lib/event_engine/thread_pool/thread_count.h +10 -25
  1142. data/src/core/lib/event_engine/thread_pool/thread_pool.h +4 -8
  1143. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +4 -7
  1144. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +43 -52
  1145. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +12 -19
  1146. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +52 -27
  1147. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +11 -12
  1148. data/src/core/lib/event_engine/time_util.cc +4 -6
  1149. data/src/core/lib/event_engine/time_util.h +3 -6
  1150. data/src/core/lib/event_engine/utils.cc +21 -9
  1151. data/src/core/lib/event_engine/utils.h +12 -8
  1152. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +128 -105
  1153. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +6 -10
  1154. data/src/core/lib/event_engine/windows/iocp.cc +16 -18
  1155. data/src/core/lib/event_engine/windows/iocp.h +4 -7
  1156. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +6 -10
  1157. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +2 -4
  1158. data/src/core/lib/event_engine/windows/win_socket.cc +44 -37
  1159. data/src/core/lib/event_engine/windows/win_socket.h +10 -14
  1160. data/src/core/lib/event_engine/windows/windows_endpoint.cc +48 -37
  1161. data/src/core/lib/event_engine/windows/windows_endpoint.h +4 -6
  1162. data/src/core/lib/event_engine/windows/windows_engine.cc +245 -138
  1163. data/src/core/lib/event_engine/windows/windows_engine.h +145 -37
  1164. data/src/core/lib/event_engine/windows/windows_listener.cc +24 -41
  1165. data/src/core/lib/event_engine/windows/windows_listener.h +6 -9
  1166. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +5 -7
  1167. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +5 -9
  1168. data/src/core/lib/event_engine/work_queue/work_queue.h +4 -7
  1169. data/src/core/lib/experiments/config.cc +55 -28
  1170. data/src/core/lib/experiments/config.h +56 -3
  1171. data/src/core/lib/experiments/experiments.cc +308 -366
  1172. data/src/core/lib/experiments/experiments.h +144 -155
  1173. data/src/core/lib/iomgr/buffer_list.cc +6 -6
  1174. data/src/core/lib/iomgr/buffer_list.h +23 -23
  1175. data/src/core/lib/iomgr/call_combiner.cc +39 -66
  1176. data/src/core/lib/iomgr/call_combiner.h +13 -17
  1177. data/src/core/lib/iomgr/cfstream_handle.cc +14 -22
  1178. data/src/core/lib/iomgr/cfstream_handle.h +1 -1
  1179. data/src/core/lib/iomgr/closure.cc +2 -2
  1180. data/src/core/lib/iomgr/closure.h +13 -21
  1181. data/src/core/lib/iomgr/combiner.cc +33 -49
  1182. data/src/core/lib/iomgr/combiner.h +2 -5
  1183. data/src/core/lib/iomgr/endpoint.cc +0 -6
  1184. data/src/core/lib/iomgr/endpoint.h +3 -4
  1185. data/src/core/lib/iomgr/endpoint_cfstream.cc +40 -73
  1186. data/src/core/lib/iomgr/endpoint_pair_posix.cc +3 -6
  1187. data/src/core/lib/iomgr/endpoint_pair_windows.cc +6 -8
  1188. data/src/core/lib/iomgr/error.cc +24 -34
  1189. data/src/core/lib/iomgr/error.h +7 -10
  1190. data/src/core/lib/iomgr/error_cfstream.cc +1 -3
  1191. data/src/core/lib/iomgr/ev_apple.cc +16 -24
  1192. data/src/core/lib/iomgr/ev_epoll1_linux.cc +69 -115
  1193. data/src/core/lib/iomgr/ev_poll_posix.cc +53 -53
  1194. data/src/core/lib/iomgr/ev_posix.cc +67 -58
  1195. data/src/core/lib/iomgr/ev_posix.h +9 -12
  1196. data/src/core/lib/iomgr/event_engine_shims/closure.cc +10 -14
  1197. data/src/core/lib/iomgr/event_engine_shims/closure.h +1 -2
  1198. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +34 -54
  1199. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +2 -2
  1200. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +9 -14
  1201. data/src/core/lib/iomgr/exec_ctx.cc +11 -21
  1202. data/src/core/lib/iomgr/exec_ctx.h +23 -146
  1203. data/src/core/lib/iomgr/executor.cc +55 -64
  1204. data/src/core/lib/iomgr/executor.h +2 -2
  1205. data/src/core/lib/iomgr/fork_posix.cc +11 -15
  1206. data/src/core/lib/iomgr/fork_windows.cc +3 -2
  1207. data/src/core/lib/iomgr/internal_errqueue.cc +4 -4
  1208. data/src/core/lib/iomgr/iocp_windows.cc +8 -10
  1209. data/src/core/lib/iomgr/iomgr.cc +18 -24
  1210. data/src/core/lib/iomgr/iomgr.h +1 -2
  1211. data/src/core/lib/iomgr/iomgr_internal.cc +1 -2
  1212. data/src/core/lib/iomgr/iomgr_internal.h +1 -2
  1213. data/src/core/lib/iomgr/iomgr_posix.cc +2 -1
  1214. data/src/core/lib/iomgr/iomgr_windows.cc +4 -5
  1215. data/src/core/lib/iomgr/lockfree_event.cc +10 -20
  1216. data/src/core/lib/iomgr/nameser.h +1 -1
  1217. data/src/core/lib/iomgr/polling_entity.cc +13 -7
  1218. data/src/core/lib/iomgr/pollset.h +0 -2
  1219. data/src/core/lib/iomgr/pollset_set_windows.cc +1 -2
  1220. data/src/core/lib/iomgr/pollset_windows.cc +2 -6
  1221. data/src/core/lib/iomgr/port.h +2 -2
  1222. data/src/core/lib/iomgr/resolve_address.cc +3 -5
  1223. data/src/core/lib/iomgr/resolve_address.h +4 -6
  1224. data/src/core/lib/iomgr/resolve_address_impl.h +1 -2
  1225. data/src/core/lib/iomgr/resolve_address_posix.cc +12 -23
  1226. data/src/core/lib/iomgr/resolve_address_posix.h +2 -2
  1227. data/src/core/lib/iomgr/resolve_address_windows.cc +9 -14
  1228. data/src/core/lib/iomgr/resolve_address_windows.h +2 -2
  1229. data/src/core/lib/iomgr/resolved_address.h +1 -2
  1230. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +3 -6
  1231. data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
  1232. data/src/core/lib/iomgr/socket_mutator.cc +2 -3
  1233. data/src/core/lib/iomgr/socket_mutator.h +1 -2
  1234. data/src/core/lib/iomgr/socket_utils.h +1 -2
  1235. data/src/core/lib/iomgr/socket_utils_common_posix.cc +43 -52
  1236. data/src/core/lib/iomgr/socket_utils_linux.cc +1 -3
  1237. data/src/core/lib/iomgr/socket_utils_posix.cc +6 -8
  1238. data/src/core/lib/iomgr/socket_utils_windows.cc +1 -3
  1239. data/src/core/lib/iomgr/socket_windows.cc +7 -11
  1240. data/src/core/lib/iomgr/socket_windows.h +1 -2
  1241. data/src/core/lib/iomgr/tcp_client_cfstream.cc +12 -20
  1242. data/src/core/lib/iomgr/tcp_client_posix.cc +19 -32
  1243. data/src/core/lib/iomgr/tcp_client_windows.cc +8 -13
  1244. data/src/core/lib/iomgr/tcp_posix.cc +89 -158
  1245. data/src/core/lib/iomgr/tcp_posix.h +1 -3
  1246. data/src/core/lib/iomgr/tcp_server.h +2 -2
  1247. data/src/core/lib/iomgr/tcp_server_posix.cc +41 -61
  1248. data/src/core/lib/iomgr/tcp_server_utils_posix.h +2 -3
  1249. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +7 -11
  1250. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +11 -13
  1251. data/src/core/lib/iomgr/tcp_server_windows.cc +20 -29
  1252. data/src/core/lib/iomgr/tcp_windows.cc +32 -62
  1253. data/src/core/lib/iomgr/timer.h +2 -2
  1254. data/src/core/lib/iomgr/timer_generic.cc +72 -105
  1255. data/src/core/lib/iomgr/timer_heap.cc +3 -4
  1256. data/src/core/lib/iomgr/timer_manager.cc +26 -52
  1257. data/src/core/lib/iomgr/timer_manager.h +1 -2
  1258. data/src/core/lib/iomgr/unix_sockets_posix.cc +4 -6
  1259. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -4
  1260. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +0 -4
  1261. data/src/core/lib/iomgr/vsock.cc +3 -6
  1262. data/src/core/lib/iomgr/vsock.h +3 -4
  1263. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +2 -4
  1264. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +6 -7
  1265. data/src/core/lib/promise/activity.cc +4 -4
  1266. data/src/core/lib/promise/activity.h +81 -29
  1267. data/src/core/lib/promise/all_ok.h +54 -11
  1268. data/src/core/lib/promise/arena_promise.h +2 -4
  1269. data/src/core/lib/promise/cancel_callback.h +34 -6
  1270. data/src/core/lib/promise/context.h +19 -10
  1271. data/src/core/lib/promise/detail/basic_seq.h +33 -20
  1272. data/src/core/lib/promise/detail/join_state.h +556 -814
  1273. data/src/core/lib/promise/detail/promise_factory.h +124 -48
  1274. data/src/core/lib/promise/detail/promise_like.h +50 -21
  1275. data/src/core/lib/promise/detail/seq_state.h +1378 -2254
  1276. data/src/core/lib/promise/detail/status.h +36 -15
  1277. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +2 -3
  1278. data/src/core/lib/promise/for_each.h +46 -40
  1279. data/src/core/lib/promise/if.h +69 -37
  1280. data/src/core/lib/promise/interceptor_list.h +30 -44
  1281. data/src/core/lib/promise/latch.h +33 -40
  1282. data/src/core/lib/promise/loop.h +82 -29
  1283. data/src/core/lib/promise/map.h +186 -22
  1284. data/src/core/lib/promise/observable.h +181 -0
  1285. data/src/core/lib/promise/party.cc +326 -149
  1286. data/src/core/lib/promise/party.h +390 -395
  1287. data/src/core/lib/promise/pipe.h +33 -56
  1288. data/src/core/lib/promise/poll.h +120 -40
  1289. data/src/core/lib/promise/prioritized_race.h +17 -23
  1290. data/src/core/lib/promise/promise.h +15 -10
  1291. data/src/core/lib/promise/race.h +14 -17
  1292. data/src/core/lib/promise/seq.h +99 -71
  1293. data/src/core/lib/promise/sleep.cc +6 -6
  1294. data/src/core/lib/promise/sleep.h +19 -6
  1295. data/src/core/lib/promise/status_flag.h +173 -51
  1296. data/src/core/lib/promise/try_join.h +156 -26
  1297. data/src/core/lib/promise/try_seq.h +151 -89
  1298. data/src/core/lib/resource_quota/api.cc +4 -6
  1299. data/src/core/lib/resource_quota/api.h +2 -3
  1300. data/src/core/lib/resource_quota/arena.cc +64 -86
  1301. data/src/core/lib/resource_quota/arena.h +225 -210
  1302. data/src/core/lib/resource_quota/connection_quota.cc +2 -3
  1303. data/src/core/lib/resource_quota/connection_quota.h +9 -6
  1304. data/src/core/lib/resource_quota/memory_quota.cc +93 -90
  1305. data/src/core/lib/resource_quota/memory_quota.h +29 -23
  1306. data/src/core/lib/resource_quota/periodic_update.cc +5 -5
  1307. data/src/core/lib/resource_quota/periodic_update.h +2 -4
  1308. data/src/core/lib/resource_quota/resource_quota.h +8 -9
  1309. data/src/core/lib/resource_quota/thread_quota.cc +2 -3
  1310. data/src/core/lib/resource_quota/thread_quota.h +5 -6
  1311. data/src/core/lib/security/authorization/audit_logging.cc +5 -7
  1312. data/src/core/lib/security/authorization/audit_logging.h +5 -6
  1313. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  1314. data/src/core/lib/security/authorization/authorization_policy_provider.h +4 -5
  1315. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +2 -2
  1316. data/src/core/lib/security/authorization/evaluate_args.cc +13 -17
  1317. data/src/core/lib/security/authorization/evaluate_args.h +6 -7
  1318. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +2 -4
  1319. data/src/core/lib/security/authorization/grpc_authorization_engine.h +2 -3
  1320. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +21 -36
  1321. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +10 -8
  1322. data/src/core/lib/security/authorization/matchers.cc +5 -7
  1323. data/src/core/lib/security/authorization/matchers.h +5 -7
  1324. data/src/core/lib/security/authorization/rbac_policy.cc +3 -3
  1325. data/src/core/lib/security/authorization/rbac_policy.h +6 -8
  1326. data/src/core/lib/security/authorization/stdout_logger.cc +4 -5
  1327. data/src/core/lib/security/authorization/stdout_logger.h +4 -4
  1328. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +8 -9
  1329. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +4 -5
  1330. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +2 -3
  1331. data/src/core/lib/security/context/security_context.cc +48 -48
  1332. data/src/core/lib/security/context/security_context.h +47 -18
  1333. data/src/core/lib/security/credentials/alts/alts_credentials.cc +5 -5
  1334. data/src/core/lib/security/credentials/alts/alts_credentials.h +9 -5
  1335. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +4 -4
  1336. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +1 -2
  1337. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +3 -5
  1338. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +3 -5
  1339. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +4 -5
  1340. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +3 -3
  1341. data/src/core/lib/security/credentials/call_creds_util.cc +8 -7
  1342. data/src/core/lib/security/credentials/call_creds_util.h +2 -2
  1343. data/src/core/lib/security/credentials/channel_creds_registry.h +7 -8
  1344. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +15 -14
  1345. data/src/core/lib/security/credentials/composite/composite_credentials.cc +10 -14
  1346. data/src/core/lib/security/credentials/composite/composite_credentials.h +11 -10
  1347. data/src/core/lib/security/credentials/credentials.cc +18 -19
  1348. data/src/core/lib/security/credentials/credentials.h +12 -14
  1349. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +335 -340
  1350. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +60 -48
  1351. data/src/core/lib/security/credentials/external/aws_request_signer.cc +4 -5
  1352. data/src/core/lib/security/credentials/external/aws_request_signer.h +3 -3
  1353. data/src/core/lib/security/credentials/external/external_account_credentials.cc +407 -374
  1354. data/src/core/lib/security/credentials/external/external_account_credentials.h +128 -60
  1355. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +89 -52
  1356. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +32 -11
  1357. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +102 -129
  1358. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +22 -24
  1359. data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -4
  1360. data/src/core/lib/security/credentials/fake/fake_credentials.h +9 -8
  1361. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +195 -0
  1362. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.h +90 -0
  1363. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +7 -8
  1364. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +58 -76
  1365. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +8 -6
  1366. data/src/core/lib/security/credentials/iam/iam_credentials.cc +6 -11
  1367. data/src/core/lib/security/credentials/iam/iam_credentials.h +9 -8
  1368. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +2 -2
  1369. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +2 -2
  1370. data/src/core/lib/security/credentials/jwt/json_token.cc +25 -29
  1371. data/src/core/lib/security/credentials/jwt/json_token.h +2 -3
  1372. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +23 -31
  1373. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +12 -12
  1374. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +68 -76
  1375. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +3 -4
  1376. data/src/core/lib/security/credentials/local/local_credentials.cc +2 -2
  1377. data/src/core/lib/security/credentials/local/local_credentials.h +3 -3
  1378. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +196 -297
  1379. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +51 -74
  1380. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +20 -34
  1381. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +12 -14
  1382. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +37 -49
  1383. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +5 -8
  1384. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +15 -17
  1385. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +18 -19
  1386. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +1 -3
  1387. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +122 -54
  1388. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +17 -16
  1389. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +6 -10
  1390. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +9 -11
  1391. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +10 -13
  1392. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +1 -1
  1393. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +6 -11
  1394. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +9 -12
  1395. data/src/core/lib/security/credentials/tls/tls_credentials.cc +21 -24
  1396. data/src/core/lib/security/credentials/tls/tls_credentials.h +5 -3
  1397. data/src/core/lib/security/credentials/tls/tls_utils.cc +5 -6
  1398. data/src/core/lib/security/credentials/tls/tls_utils.h +3 -3
  1399. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.cc +304 -0
  1400. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.h +181 -0
  1401. data/src/core/lib/security/credentials/xds/xds_credentials.cc +16 -13
  1402. data/src/core/lib/security/credentials/xds/xds_credentials.h +7 -9
  1403. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +23 -28
  1404. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +1 -1
  1405. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +27 -27
  1406. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +1 -1
  1407. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +4 -7
  1408. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +5 -6
  1409. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +10 -12
  1410. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +4 -6
  1411. data/src/core/lib/security/security_connector/local/local_security_connector.cc +26 -26
  1412. data/src/core/lib/security/security_connector/local/local_security_connector.h +1 -1
  1413. data/src/core/lib/security/security_connector/security_connector.cc +6 -11
  1414. data/src/core/lib/security/security_connector/security_connector.h +8 -11
  1415. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +23 -27
  1416. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +2 -3
  1417. data/src/core/lib/security/security_connector/ssl_utils.cc +34 -35
  1418. data/src/core/lib/security/security_connector/ssl_utils.h +7 -9
  1419. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +46 -59
  1420. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +20 -21
  1421. data/src/core/lib/security/transport/auth_filters.h +101 -9
  1422. data/src/core/lib/security/transport/client_auth_filter.cc +113 -32
  1423. data/src/core/lib/security/transport/server_auth_filter.cc +19 -38
  1424. data/src/core/lib/security/util/json_util.cc +4 -5
  1425. data/src/core/lib/security/util/json_util.h +1 -1
  1426. data/src/core/lib/slice/percent_encoding.cc +2 -5
  1427. data/src/core/lib/slice/slice.cc +4 -7
  1428. data/src/core/lib/slice/slice.h +6 -9
  1429. data/src/core/lib/slice/slice_buffer.cc +7 -9
  1430. data/src/core/lib/slice/slice_buffer.h +5 -6
  1431. data/src/core/lib/slice/slice_internal.h +3 -6
  1432. data/src/core/lib/slice/slice_refcount.h +8 -15
  1433. data/src/core/lib/slice/slice_string_helpers.cc +1 -1
  1434. data/src/core/lib/slice/slice_string_helpers.h +1 -2
  1435. data/src/core/lib/surface/byte_buffer.cc +1 -2
  1436. data/src/core/lib/surface/byte_buffer_reader.cc +3 -6
  1437. data/src/core/lib/surface/call.cc +158 -3826
  1438. data/src/core/lib/surface/call.h +67 -160
  1439. data/src/core/lib/surface/call_details.cc +4 -3
  1440. data/src/core/lib/surface/call_log_batch.cc +8 -11
  1441. data/src/core/lib/surface/call_test_only.h +1 -2
  1442. data/src/core/lib/surface/call_utils.cc +231 -0
  1443. data/src/core/lib/surface/call_utils.h +492 -0
  1444. data/src/core/lib/surface/channel.cc +47 -54
  1445. data/src/core/lib/surface/channel.h +24 -22
  1446. data/src/core/lib/surface/channel_create.cc +28 -13
  1447. data/src/core/lib/surface/channel_create.h +5 -5
  1448. data/src/core/lib/surface/channel_init.cc +270 -267
  1449. data/src/core/lib/surface/channel_init.h +173 -119
  1450. data/src/core/lib/surface/client_call.cc +456 -0
  1451. data/src/core/lib/surface/client_call.h +192 -0
  1452. data/src/core/lib/surface/completion_queue.cc +103 -138
  1453. data/src/core/lib/surface/completion_queue.h +4 -13
  1454. data/src/core/lib/surface/completion_queue_factory.cc +1 -3
  1455. data/src/core/lib/surface/connection_context.cc +77 -0
  1456. data/src/core/lib/surface/connection_context.h +156 -0
  1457. data/src/core/lib/surface/event_string.cc +9 -3
  1458. data/src/core/lib/surface/event_string.h +2 -2
  1459. data/src/core/lib/surface/filter_stack_call.cc +1154 -0
  1460. data/src/core/lib/surface/filter_stack_call.h +366 -0
  1461. data/src/core/lib/surface/init.cc +73 -28
  1462. data/src/core/lib/surface/init.h +5 -0
  1463. data/src/core/lib/surface/init_internally.h +13 -2
  1464. data/src/core/lib/surface/lame_client.cc +12 -15
  1465. data/src/core/lib/surface/lame_client.h +6 -5
  1466. data/src/core/lib/surface/legacy_channel.cc +67 -51
  1467. data/src/core/lib/surface/legacy_channel.h +16 -26
  1468. data/src/core/lib/surface/metadata_array.cc +5 -5
  1469. data/src/core/lib/surface/server_call.cc +259 -0
  1470. data/src/core/lib/surface/server_call.h +169 -0
  1471. data/src/core/lib/surface/validate_metadata.cc +3 -4
  1472. data/src/core/lib/surface/validate_metadata.h +2 -5
  1473. data/src/core/lib/surface/version.cc +2 -2
  1474. data/src/core/lib/transport/bdp_estimator.cc +12 -20
  1475. data/src/core/lib/transport/bdp_estimator.h +10 -16
  1476. data/src/core/lib/transport/call_arena_allocator.cc +4 -18
  1477. data/src/core/lib/transport/call_arena_allocator.h +30 -12
  1478. data/src/core/lib/transport/call_destination.h +76 -0
  1479. data/src/core/lib/transport/call_filters.cc +67 -405
  1480. data/src/core/lib/transport/call_filters.h +877 -778
  1481. data/src/core/lib/transport/call_final_info.cc +2 -2
  1482. data/src/core/lib/transport/call_final_info.h +3 -3
  1483. data/src/core/lib/transport/call_spine.cc +58 -74
  1484. data/src/core/lib/transport/call_spine.h +331 -361
  1485. data/src/core/lib/transport/call_state.cc +39 -0
  1486. data/src/core/lib/transport/call_state.h +1154 -0
  1487. data/src/core/lib/transport/connectivity_state.cc +43 -52
  1488. data/src/core/lib/transport/connectivity_state.h +7 -12
  1489. data/src/core/lib/transport/error_utils.cc +3 -4
  1490. data/src/core/lib/transport/error_utils.h +4 -5
  1491. data/src/core/lib/transport/http2_errors.h +5 -3
  1492. data/src/core/lib/transport/interception_chain.cc +155 -0
  1493. data/src/core/lib/transport/interception_chain.h +282 -0
  1494. data/src/core/lib/transport/message.cc +2 -2
  1495. data/src/core/lib/transport/message.h +5 -0
  1496. data/src/core/lib/transport/metadata.cc +27 -3
  1497. data/src/core/lib/transport/metadata.h +125 -2
  1498. data/src/core/lib/transport/metadata_batch.cc +14 -7
  1499. data/src/core/lib/transport/metadata_batch.h +152 -31
  1500. data/src/core/lib/transport/metadata_compression_traits.h +3 -4
  1501. data/src/core/lib/transport/metadata_info.h +1 -1
  1502. data/src/core/lib/transport/parsed_metadata.h +3 -5
  1503. data/src/core/lib/transport/simple_slice_based_metadata.h +1 -2
  1504. data/src/core/lib/transport/status_conversion.h +1 -1
  1505. data/src/core/lib/transport/timeout_encoding.cc +22 -23
  1506. data/src/core/lib/transport/timeout_encoding.h +4 -5
  1507. data/src/core/lib/transport/transport.cc +7 -13
  1508. data/src/core/lib/transport/transport.h +71 -63
  1509. data/src/core/lib/transport/transport_framing_endpoint_extension.h +47 -0
  1510. data/src/core/lib/transport/transport_op_string.cc +4 -6
  1511. data/src/core/load_balancing/address_filtering.cc +2 -4
  1512. data/src/core/load_balancing/address_filtering.h +4 -5
  1513. data/src/core/load_balancing/backend_metric_data.h +2 -2
  1514. data/src/core/load_balancing/backend_metric_parser.cc +22 -30
  1515. data/src/core/load_balancing/backend_metric_parser.h +1 -3
  1516. data/src/core/load_balancing/child_policy_handler.cc +37 -41
  1517. data/src/core/load_balancing/child_policy_handler.h +4 -5
  1518. data/src/core/load_balancing/delegating_helper.h +6 -7
  1519. data/src/core/load_balancing/endpoint_list.cc +23 -15
  1520. data/src/core/load_balancing/endpoint_list.h +27 -22
  1521. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +12 -11
  1522. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +8 -5
  1523. data/src/core/load_balancing/grpclb/grpclb.cc +175 -226
  1524. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +2 -3
  1525. data/src/core/load_balancing/grpclb/grpclb_client_stats.cc +2 -3
  1526. data/src/core/load_balancing/grpclb/grpclb_client_stats.h +5 -7
  1527. data/src/core/load_balancing/grpclb/load_balancer_api.cc +7 -10
  1528. data/src/core/load_balancing/grpclb/load_balancer_api.h +4 -6
  1529. data/src/core/load_balancing/health_check_client.cc +76 -128
  1530. data/src/core/load_balancing/health_check_client.h +3 -3
  1531. data/src/core/load_balancing/health_check_client_internal.h +15 -16
  1532. data/src/core/load_balancing/lb_policy.cc +9 -14
  1533. data/src/core/load_balancing/lb_policy.h +77 -51
  1534. data/src/core/load_balancing/lb_policy_factory.h +5 -6
  1535. data/src/core/load_balancing/lb_policy_registry.cc +15 -15
  1536. data/src/core/load_balancing/lb_policy_registry.h +5 -6
  1537. data/src/core/load_balancing/oob_backend_metric.cc +19 -25
  1538. data/src/core/load_balancing/oob_backend_metric.h +3 -3
  1539. data/src/core/load_balancing/oob_backend_metric_internal.h +8 -9
  1540. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +191 -247
  1541. data/src/core/load_balancing/outlier_detection/outlier_detection.h +9 -10
  1542. data/src/core/load_balancing/pick_first/pick_first.cc +333 -381
  1543. data/src/core/load_balancing/priority/priority.cc +102 -151
  1544. data/src/core/load_balancing/ring_hash/ring_hash.cc +254 -226
  1545. data/src/core/load_balancing/ring_hash/ring_hash.h +10 -18
  1546. data/src/core/load_balancing/rls/rls.cc +434 -528
  1547. data/src/core/load_balancing/rls/rls.h +97 -1
  1548. data/src/core/load_balancing/round_robin/round_robin.cc +71 -103
  1549. data/src/core/load_balancing/subchannel_interface.h +17 -6
  1550. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +8 -9
  1551. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +4 -5
  1552. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +159 -185
  1553. data/src/core/load_balancing/weighted_target/weighted_target.cc +79 -123
  1554. data/src/core/load_balancing/xds/cds.cc +65 -85
  1555. data/src/core/load_balancing/xds/xds_cluster_impl.cc +192 -172
  1556. data/src/core/load_balancing/xds/xds_cluster_manager.cc +63 -103
  1557. data/src/core/load_balancing/xds/xds_override_host.cc +163 -272
  1558. data/src/core/load_balancing/xds/xds_override_host.h +6 -7
  1559. data/src/core/load_balancing/xds/xds_wrr_locality.cc +48 -60
  1560. data/src/core/plugin_registry/grpc_plugin_registry.cc +6 -8
  1561. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +6 -1
  1562. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +98 -73
  1563. data/src/core/resolver/dns/c_ares/dns_resolver_ares.h +2 -3
  1564. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h +4 -6
  1565. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +2 -6
  1566. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +119 -101
  1567. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +166 -151
  1568. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +4 -18
  1569. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  1570. data/src/core/resolver/dns/dns_resolver_plugin.cc +10 -11
  1571. data/src/core/resolver/dns/dns_resolver_plugin.h +1 -1
  1572. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +62 -74
  1573. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h +3 -4
  1574. data/src/core/resolver/dns/event_engine/service_config_helper.cc +8 -10
  1575. data/src/core/resolver/dns/event_engine/service_config_helper.h +2 -2
  1576. data/src/core/resolver/dns/native/dns_resolver.cc +23 -32
  1577. data/src/core/resolver/dns/native/dns_resolver.h +1 -1
  1578. data/src/core/resolver/endpoint_addresses.cc +2 -5
  1579. data/src/core/resolver/endpoint_addresses.h +5 -3
  1580. data/src/core/resolver/fake/fake_resolver.cc +18 -21
  1581. data/src/core/resolver/fake/fake_resolver.h +10 -11
  1582. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +33 -38
  1583. data/src/core/resolver/polling_resolver.cc +41 -60
  1584. data/src/core/resolver/polling_resolver.h +11 -12
  1585. data/src/core/resolver/resolver.cc +2 -6
  1586. data/src/core/resolver/resolver.h +4 -10
  1587. data/src/core/resolver/resolver_factory.h +4 -5
  1588. data/src/core/resolver/resolver_registry.cc +12 -13
  1589. data/src/core/resolver/resolver_registry.h +4 -5
  1590. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +8 -9
  1591. data/src/core/resolver/xds/xds_config.cc +95 -0
  1592. data/src/core/resolver/xds/xds_config.h +108 -0
  1593. data/src/core/resolver/xds/xds_dependency_manager.cc +260 -342
  1594. data/src/core/resolver/xds/xds_dependency_manager.h +34 -89
  1595. data/src/core/resolver/xds/xds_resolver.cc +188 -210
  1596. data/src/core/resolver/xds/xds_resolver_attributes.h +7 -4
  1597. data/src/core/server/server.cc +658 -501
  1598. data/src/core/server/server.h +261 -97
  1599. data/src/core/server/server_call_tracer_filter.cc +22 -25
  1600. data/src/core/server/server_call_tracer_filter.h +1 -1
  1601. data/src/core/server/server_config_selector.h +6 -7
  1602. data/src/core/server/server_config_selector_filter.cc +23 -25
  1603. data/src/core/server/server_interface.h +2 -0
  1604. data/src/core/server/xds_channel_stack_modifier.cc +5 -5
  1605. data/src/core/server/xds_channel_stack_modifier.h +6 -7
  1606. data/src/core/server/xds_server_config_fetcher.cc +147 -223
  1607. data/src/core/service_config/service_config.h +4 -6
  1608. data/src/core/service_config/service_config_call_data.h +21 -20
  1609. data/src/core/service_config/service_config_channel_arg_filter.cc +21 -29
  1610. data/src/core/service_config/service_config_impl.cc +12 -14
  1611. data/src/core/service_config/service_config_impl.h +5 -8
  1612. data/src/core/service_config/service_config_parser.cc +4 -8
  1613. data/src/core/service_config/service_config_parser.h +3 -5
  1614. data/src/core/telemetry/call_tracer.cc +386 -0
  1615. data/src/core/telemetry/call_tracer.h +264 -0
  1616. data/src/core/telemetry/histogram_view.cc +69 -0
  1617. data/src/core/telemetry/histogram_view.h +36 -0
  1618. data/src/core/telemetry/metrics.cc +180 -0
  1619. data/src/core/telemetry/metrics.h +563 -0
  1620. data/src/core/telemetry/stats.cc +67 -0
  1621. data/src/core/telemetry/stats.h +62 -0
  1622. data/src/core/telemetry/stats_data.cc +931 -0
  1623. data/src/core/telemetry/stats_data.h +705 -0
  1624. data/src/core/telemetry/tcp_tracer.h +143 -0
  1625. data/src/core/tsi/alts/crypt/aes_gcm.cc +5 -8
  1626. data/src/core/tsi/alts/crypt/gsec.cc +2 -3
  1627. data/src/core/tsi/alts/crypt/gsec.h +3 -4
  1628. data/src/core/tsi/alts/frame_protector/alts_counter.cc +1 -2
  1629. data/src/core/tsi/alts/frame_protector/alts_counter.h +3 -4
  1630. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +1 -2
  1631. data/src/core/tsi/alts/frame_protector/alts_crypter.h +2 -3
  1632. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +16 -18
  1633. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +1 -2
  1634. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +1 -1
  1635. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +1 -1
  1636. data/src/core/tsi/alts/frame_protector/frame_handler.cc +11 -12
  1637. data/src/core/tsi/alts/frame_protector/frame_handler.h +1 -2
  1638. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +43 -48
  1639. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +2 -4
  1640. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +1 -1
  1641. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +69 -71
  1642. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +3 -3
  1643. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +17 -24
  1644. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +3 -4
  1645. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +14 -17
  1646. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +1 -2
  1647. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +11 -12
  1648. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +1 -2
  1649. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +9 -11
  1650. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +3 -5
  1651. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +1 -2
  1652. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +10 -14
  1653. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +1 -2
  1654. data/src/core/tsi/fake_transport_security.cc +32 -32
  1655. data/src/core/tsi/local_transport_security.cc +9 -10
  1656. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +9 -12
  1657. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +8 -10
  1658. data/src/core/tsi/ssl/session_cache/ssl_session.h +4 -5
  1659. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +7 -9
  1660. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +7 -8
  1661. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +2 -4
  1662. data/src/core/tsi/ssl_transport_security.cc +135 -113
  1663. data/src/core/tsi/ssl_transport_security.h +6 -8
  1664. data/src/core/tsi/ssl_transport_security_utils.cc +77 -24
  1665. data/src/core/tsi/ssl_transport_security_utils.h +14 -5
  1666. data/src/core/tsi/ssl_types.h +1 -2
  1667. data/src/core/tsi/transport_security.cc +2 -7
  1668. data/src/core/tsi/transport_security.h +1 -4
  1669. data/src/core/tsi/transport_security_interface.h +3 -8
  1670. data/src/core/util/alloc.cc +69 -0
  1671. data/src/core/util/alloc.h +28 -0
  1672. data/src/core/util/atomic_utils.h +47 -0
  1673. data/src/core/util/avl.h +324 -0
  1674. data/src/core/util/backoff.cc +57 -0
  1675. data/src/core/util/backoff.h +86 -0
  1676. data/src/core/util/bitset.h +224 -0
  1677. data/src/core/util/chunked_vector.h +256 -0
  1678. data/src/core/util/construct_destruct.h +41 -0
  1679. data/src/core/util/cpp_impl_of.h +49 -0
  1680. data/src/core/util/crash.cc +40 -0
  1681. data/src/core/util/crash.h +36 -0
  1682. data/src/core/util/debug_location.h +106 -0
  1683. data/src/core/util/directory_reader.h +48 -0
  1684. data/src/core/util/down_cast.h +48 -0
  1685. data/src/core/util/dual_ref_counted.h +376 -0
  1686. data/src/core/util/dump_args.cc +54 -0
  1687. data/src/core/util/dump_args.h +114 -0
  1688. data/src/core/util/env.h +52 -0
  1689. data/src/core/util/event_log.cc +87 -0
  1690. data/src/core/util/event_log.h +79 -0
  1691. data/src/core/util/examine_stack.cc +43 -0
  1692. data/src/core/util/examine_stack.h +44 -0
  1693. data/src/core/util/fork.cc +241 -0
  1694. data/src/core/util/fork.h +98 -0
  1695. data/src/core/util/gcp_metadata_query.cc +132 -0
  1696. data/src/core/util/gcp_metadata_query.h +86 -0
  1697. data/src/core/util/gethostname.h +26 -0
  1698. data/src/core/util/gethostname_fallback.cc +30 -0
  1699. data/src/core/util/gethostname_host_name_max.cc +39 -0
  1700. data/src/core/util/gethostname_sysconf.cc +39 -0
  1701. data/src/core/util/glob.cc +70 -0
  1702. data/src/core/util/glob.h +29 -0
  1703. data/src/core/util/gpr_time.cc +266 -0
  1704. data/src/core/util/grpc_if_nametoindex.h +29 -0
  1705. data/src/core/util/grpc_if_nametoindex_posix.cc +41 -0
  1706. data/src/core/util/grpc_if_nametoindex_unsupported.cc +36 -0
  1707. data/src/core/util/host_port.cc +114 -0
  1708. data/src/core/util/host_port.h +57 -0
  1709. data/src/core/util/http_client/format_request.cc +134 -0
  1710. data/src/core/util/http_client/format_request.h +37 -0
  1711. data/src/core/util/http_client/httpcli.cc +427 -0
  1712. data/src/core/util/http_client/httpcli.h +279 -0
  1713. data/src/core/util/http_client/httpcli_security_connector.cc +210 -0
  1714. data/src/core/util/http_client/httpcli_ssl_credentials.h +38 -0
  1715. data/src/core/util/http_client/parser.cc +447 -0
  1716. data/src/core/util/http_client/parser.h +126 -0
  1717. data/src/core/util/if_list.h +4530 -0
  1718. data/src/core/util/iphone/cpu.cc +43 -0
  1719. data/src/core/util/json/json.h +29 -0
  1720. data/src/core/util/json/json_args.h +34 -0
  1721. data/src/core/util/json/json_channel_args.h +42 -0
  1722. data/src/core/util/json/json_object_loader.cc +215 -0
  1723. data/src/core/util/json/json_object_loader.h +644 -0
  1724. data/src/core/util/json/json_reader.cc +953 -0
  1725. data/src/core/util/json/json_reader.h +33 -0
  1726. data/src/core/util/json/json_util.cc +101 -0
  1727. data/src/core/util/json/json_util.h +163 -0
  1728. data/src/core/util/json/json_writer.cc +337 -0
  1729. data/src/core/util/json/json_writer.h +33 -0
  1730. data/src/core/util/latent_see.cc +163 -0
  1731. data/src/core/util/latent_see.h +334 -0
  1732. data/src/core/util/linux/cpu.cc +86 -0
  1733. data/src/core/util/linux/env.cc +61 -0
  1734. data/src/core/util/load_file.cc +75 -0
  1735. data/src/core/util/load_file.h +33 -0
  1736. data/src/core/util/log.cc +127 -0
  1737. data/src/core/util/lru_cache.h +122 -0
  1738. data/src/core/util/manual_constructor.h +145 -0
  1739. data/src/core/util/match.h +74 -0
  1740. data/src/core/util/matchers.cc +336 -0
  1741. data/src/core/util/matchers.h +162 -0
  1742. data/src/core/util/memory.h +52 -0
  1743. data/src/core/util/mpscq.cc +108 -0
  1744. data/src/core/util/mpscq.h +98 -0
  1745. data/src/core/util/msys/tmpfile.cc +57 -0
  1746. data/src/core/util/no_destruct.h +95 -0
  1747. data/src/core/util/notification.h +66 -0
  1748. data/src/core/util/orphanable.h +153 -0
  1749. data/src/core/util/overload.h +59 -0
  1750. data/src/core/util/packed_table.h +40 -0
  1751. data/src/core/util/per_cpu.cc +34 -0
  1752. data/src/core/util/per_cpu.h +102 -0
  1753. data/src/core/util/posix/cpu.cc +83 -0
  1754. data/src/core/util/posix/directory_reader.cc +82 -0
  1755. data/src/core/util/posix/env.cc +47 -0
  1756. data/src/core/util/posix/stat.cc +54 -0
  1757. data/src/core/util/posix/string.cc +71 -0
  1758. data/src/core/util/posix/sync.cc +157 -0
  1759. data/src/core/util/posix/thd.cc +243 -0
  1760. data/src/core/util/posix/time.cc +122 -0
  1761. data/src/core/util/posix/tmpfile.cc +71 -0
  1762. data/src/core/util/random_early_detection.cc +33 -0
  1763. data/src/core/util/random_early_detection.h +61 -0
  1764. data/src/core/util/ref_counted.h +403 -0
  1765. data/src/core/util/ref_counted_ptr.h +443 -0
  1766. data/src/core/util/ref_counted_string.cc +42 -0
  1767. data/src/core/util/ref_counted_string.h +159 -0
  1768. data/src/core/util/ring_buffer.h +122 -0
  1769. data/src/core/util/single_set_ptr.h +89 -0
  1770. data/src/core/util/sorted_pack.h +89 -0
  1771. data/src/core/util/spinlock.h +51 -0
  1772. data/src/core/util/stat.h +35 -0
  1773. data/src/core/util/status_helper.cc +427 -0
  1774. data/src/core/util/status_helper.h +160 -0
  1775. data/src/core/util/strerror.cc +40 -0
  1776. data/src/core/util/strerror.h +29 -0
  1777. data/src/core/util/string.cc +341 -0
  1778. data/src/core/util/string.h +110 -0
  1779. data/src/core/util/sync.cc +123 -0
  1780. data/src/core/util/sync.h +199 -0
  1781. data/src/core/util/sync_abseil.cc +106 -0
  1782. data/src/core/util/table.h +471 -0
  1783. data/src/core/util/tchar.cc +49 -0
  1784. data/src/core/util/tchar.h +33 -0
  1785. data/src/core/util/thd.h +193 -0
  1786. data/src/core/util/time.cc +240 -0
  1787. data/src/core/util/time.h +385 -0
  1788. data/src/core/util/time_averaged_stats.cc +60 -0
  1789. data/src/core/util/time_averaged_stats.h +79 -0
  1790. data/src/core/util/time_precise.cc +167 -0
  1791. data/src/core/util/time_precise.h +68 -0
  1792. data/src/core/util/time_util.cc +80 -0
  1793. data/src/core/util/time_util.h +41 -0
  1794. data/src/core/util/tmpfile.h +31 -0
  1795. data/src/core/util/type_list.h +88 -0
  1796. data/src/core/util/unique_ptr_with_bitset.h +86 -0
  1797. data/src/core/util/unique_type_name.h +123 -0
  1798. data/src/core/util/upb_utils.h +43 -0
  1799. data/src/core/util/uri.cc +378 -0
  1800. data/src/core/util/uri.h +112 -0
  1801. data/src/core/util/useful.h +153 -0
  1802. data/src/core/util/uuid_v4.cc +37 -0
  1803. data/src/core/util/uuid_v4.h +35 -0
  1804. data/src/core/util/validation_errors.cc +73 -0
  1805. data/src/core/util/validation_errors.h +144 -0
  1806. data/src/core/util/wait_for_single_owner.h +62 -0
  1807. data/src/core/util/windows/cpu.cc +34 -0
  1808. data/src/core/util/windows/directory_reader.cc +79 -0
  1809. data/src/core/util/windows/env.cc +56 -0
  1810. data/src/core/util/windows/stat.cc +50 -0
  1811. data/src/core/util/windows/string.cc +68 -0
  1812. data/src/core/util/windows/string_util.cc +53 -0
  1813. data/src/core/util/windows/sync.cc +121 -0
  1814. data/src/core/util/windows/thd.cc +182 -0
  1815. data/src/core/util/windows/time.cc +104 -0
  1816. data/src/core/util/windows/tmpfile.cc +66 -0
  1817. data/src/core/util/work_serializer.cc +298 -0
  1818. data/src/core/util/work_serializer.h +81 -0
  1819. data/src/core/util/xxhash_inline.h +29 -0
  1820. data/src/core/xds/grpc/certificate_provider_store.cc +15 -21
  1821. data/src/core/xds/grpc/certificate_provider_store.h +13 -14
  1822. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +8 -9
  1823. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +9 -10
  1824. data/src/core/xds/grpc/xds_audit_logger_registry.cc +6 -6
  1825. data/src/core/xds/grpc/xds_audit_logger_registry.h +4 -5
  1826. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +18 -179
  1827. data/src/core/xds/grpc/xds_bootstrap_grpc.h +11 -41
  1828. data/src/core/xds/grpc/xds_certificate_provider.cc +19 -20
  1829. data/src/core/xds/grpc/xds_certificate_provider.h +12 -11
  1830. data/src/core/xds/grpc/xds_client_grpc.cc +104 -83
  1831. data/src/core/xds/grpc/xds_client_grpc.h +16 -10
  1832. data/src/core/xds/grpc/xds_cluster.cc +12 -737
  1833. data/src/core/xds/grpc/xds_cluster.h +40 -49
  1834. data/src/core/xds/grpc/xds_cluster_parser.cc +772 -0
  1835. data/src/core/xds/grpc/xds_cluster_parser.h +61 -0
  1836. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +10 -13
  1837. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +5 -6
  1838. data/src/core/xds/grpc/xds_common_types.cc +33 -438
  1839. data/src/core/xds/grpc/xds_common_types.h +12 -30
  1840. data/src/core/xds/grpc/xds_common_types_parser.cc +501 -0
  1841. data/src/core/xds/grpc/xds_common_types_parser.h +77 -0
  1842. data/src/core/xds/grpc/xds_endpoint.cc +3 -424
  1843. data/src/core/xds/grpc/xds_endpoint.h +7 -29
  1844. data/src/core/xds/grpc/xds_endpoint_parser.cc +475 -0
  1845. data/src/core/xds/grpc/xds_endpoint_parser.h +47 -0
  1846. data/src/core/xds/grpc/xds_health_status.cc +4 -6
  1847. data/src/core/xds/grpc/xds_health_status.h +4 -6
  1848. data/src/core/xds/grpc/xds_http_fault_filter.cc +46 -36
  1849. data/src/core/xds/grpc/xds_http_fault_filter.h +15 -10
  1850. data/src/core/xds/grpc/xds_http_filter.h +134 -0
  1851. data/src/core/xds/grpc/xds_http_filter_registry.cc +122 -0
  1852. data/src/core/xds/grpc/xds_http_filter_registry.h +104 -0
  1853. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +141 -0
  1854. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +61 -0
  1855. data/src/core/xds/grpc/xds_http_rbac_filter.cc +93 -71
  1856. data/src/core/xds/grpc/xds_http_rbac_filter.h +15 -10
  1857. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +34 -21
  1858. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +15 -10
  1859. data/src/core/xds/grpc/xds_lb_policy_registry.cc +27 -32
  1860. data/src/core/xds/grpc/xds_lb_policy_registry.h +5 -6
  1861. data/src/core/xds/grpc/xds_listener.cc +20 -989
  1862. data/src/core/xds/grpc/xds_listener.h +12 -45
  1863. data/src/core/xds/grpc/xds_listener_parser.cc +1000 -0
  1864. data/src/core/xds/grpc/xds_listener_parser.h +60 -0
  1865. data/src/core/xds/grpc/xds_metadata.cc +62 -0
  1866. data/src/core/xds/grpc/xds_metadata.h +158 -0
  1867. data/src/core/xds/grpc/xds_metadata_parser.cc +197 -0
  1868. data/src/core/xds/grpc/xds_metadata_parser.h +35 -0
  1869. data/src/core/xds/grpc/xds_route_config.cc +12 -934
  1870. data/src/core/xds/grpc/xds_route_config.h +17 -50
  1871. data/src/core/xds/grpc/xds_route_config_parser.cc +960 -0
  1872. data/src/core/xds/grpc/xds_route_config_parser.h +77 -0
  1873. data/src/core/xds/grpc/xds_routing.cc +66 -33
  1874. data/src/core/xds/grpc/xds_routing.h +17 -11
  1875. data/src/core/xds/grpc/xds_server_grpc.cc +181 -0
  1876. data/src/core/xds/grpc/xds_server_grpc.h +66 -0
  1877. data/src/core/xds/grpc/xds_server_grpc_interface.h +33 -0
  1878. data/src/core/xds/grpc/xds_transport_grpc.cc +101 -59
  1879. data/src/core/xds/grpc/xds_transport_grpc.h +34 -23
  1880. data/src/core/xds/xds_client/lrs_client.cc +1280 -0
  1881. data/src/core/xds/xds_client/lrs_client.h +394 -0
  1882. data/src/core/xds/xds_client/xds_api.cc +28 -469
  1883. data/src/core/xds/xds_client/xds_api.h +6 -161
  1884. data/src/core/xds/xds_client/xds_backend_metric_propagation.cc +63 -0
  1885. data/src/core/xds/xds_client/xds_backend_metric_propagation.h +59 -0
  1886. data/src/core/xds/xds_client/xds_bootstrap.cc +13 -4
  1887. data/src/core/xds/xds_client/xds_bootstrap.h +10 -3
  1888. data/src/core/xds/xds_client/xds_client.cc +1122 -1414
  1889. data/src/core/xds/xds_client/xds_client.h +167 -117
  1890. data/src/core/xds/xds_client/xds_locality.h +102 -0
  1891. data/src/core/xds/xds_client/xds_metrics.h +2 -2
  1892. data/src/core/xds/xds_client/xds_resource_type.h +6 -8
  1893. data/src/core/xds/xds_client/xds_resource_type_impl.h +15 -11
  1894. data/src/core/xds/xds_client/xds_transport.h +29 -14
  1895. data/src/ruby/bin/math_pb.rb +1 -22
  1896. data/src/ruby/ext/grpc/extconf.rb +2 -1
  1897. data/src/ruby/ext/grpc/rb_byte_buffer.c +3 -3
  1898. data/src/ruby/ext/grpc/rb_call.c +15 -8
  1899. data/src/ruby/ext/grpc/rb_call_credentials.c +39 -33
  1900. data/src/ruby/ext/grpc/rb_channel.c +42 -37
  1901. data/src/ruby/ext/grpc/rb_channel_args.c +4 -4
  1902. data/src/ruby/ext/grpc/rb_channel_credentials.c +5 -6
  1903. data/src/ruby/ext/grpc/rb_channel_credentials.h +1 -2
  1904. data/src/ruby/ext/grpc/rb_completion_queue.c +18 -36
  1905. data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
  1906. data/src/ruby/ext/grpc/rb_compression_options.c +9 -10
  1907. data/src/ruby/ext/grpc/rb_event_thread.c +9 -9
  1908. data/src/ruby/ext/grpc/rb_grpc.c +16 -16
  1909. data/src/ruby/ext/grpc/rb_grpc.h +8 -1
  1910. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +6 -14
  1911. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +9 -21
  1912. data/src/ruby/ext/grpc/rb_server.c +47 -28
  1913. data/src/ruby/ext/grpc/rb_server_credentials.c +3 -3
  1914. data/src/ruby/ext/grpc/rb_server_credentials.h +1 -2
  1915. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +5 -6
  1916. data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +1 -2
  1917. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +4 -4
  1918. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +1 -2
  1919. data/src/ruby/lib/grpc/generic/active_call.rb +8 -5
  1920. data/src/ruby/lib/grpc/logconfig.rb +13 -0
  1921. data/src/ruby/lib/grpc/version.rb +1 -1
  1922. data/src/ruby/pb/grpc/health/v1/health_pb.rb +1 -22
  1923. data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +5 -5
  1924. data/src/ruby/pb/grpc/testing/metrics_pb.rb +10 -19
  1925. data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +5 -5
  1926. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +1 -22
  1927. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -22
  1928. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -22
  1929. data/src/ruby/spec/call_spec.rb +53 -40
  1930. data/src/ruby/spec/channel_spec.rb +4 -2
  1931. data/src/ruby/spec/client_server_spec.rb +148 -507
  1932. data/src/ruby/spec/generic/active_call_spec.rb +64 -86
  1933. data/src/ruby/spec/generic/client_stub_spec.rb +20 -20
  1934. data/src/ruby/spec/logconfig_spec.rb +30 -0
  1935. data/src/ruby/spec/support/services.rb +3 -0
  1936. data/third_party/abseil-cpp/absl/algorithm/container.h +57 -18
  1937. data/third_party/abseil-cpp/absl/base/attributes.h +84 -0
  1938. data/third_party/abseil-cpp/absl/base/config.h +32 -51
  1939. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +0 -16
  1940. data/third_party/abseil-cpp/absl/base/internal/nullability_impl.h +3 -1
  1941. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +13 -3
  1942. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +0 -12
  1943. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +4 -4
  1944. data/third_party/abseil-cpp/absl/base/macros.h +48 -0
  1945. data/third_party/abseil-cpp/absl/base/no_destructor.h +35 -40
  1946. data/third_party/abseil-cpp/absl/base/nullability.h +33 -7
  1947. data/third_party/abseil-cpp/absl/base/optimization.h +11 -0
  1948. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  1949. data/third_party/abseil-cpp/absl/base/prefetch.h +1 -1
  1950. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +68 -12
  1951. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +60 -6
  1952. data/third_party/abseil-cpp/absl/container/hash_container_defaults.h +45 -0
  1953. data/third_party/abseil-cpp/absl/container/inlined_vector.h +13 -0
  1954. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +20 -11
  1955. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +15 -16
  1956. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +34 -1
  1957. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +68 -1
  1958. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +50 -0
  1959. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +22 -7
  1960. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +26 -8
  1961. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +39 -35
  1962. data/third_party/abseil-cpp/absl/container/internal/layout.h +190 -74
  1963. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +8 -6
  1964. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +334 -71
  1965. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1299 -458
  1966. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +19 -17
  1967. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +4 -3
  1968. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +2 -1
  1969. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +12 -8
  1970. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +1 -1
  1971. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +11 -7
  1972. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +18 -17
  1973. data/third_party/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence.h +126 -0
  1974. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +258 -0
  1975. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +55 -0
  1976. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1057 -86
  1977. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +3 -0
  1978. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.cc +925 -0
  1979. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.h +42 -0
  1980. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +43 -16
  1981. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +8 -7
  1982. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +10 -7
  1983. data/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.cc +70 -0
  1984. data/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.h +47 -0
  1985. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +11 -0
  1986. data/third_party/abseil-cpp/absl/flags/flag.h +2 -0
  1987. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +117 -30
  1988. data/third_party/abseil-cpp/absl/flags/internal/flag.h +192 -30
  1989. data/third_party/abseil-cpp/absl/flags/reflection.cc +10 -0
  1990. data/third_party/abseil-cpp/absl/functional/any_invocable.h +13 -3
  1991. data/third_party/abseil-cpp/absl/functional/bind_front.h +3 -2
  1992. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +7 -7
  1993. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +9 -9
  1994. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +1 -1
  1995. data/third_party/abseil-cpp/absl/hash/internal/hash.h +13 -3
  1996. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +60 -28
  1997. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h +4 -0
  1998. data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +3 -3
  1999. data/third_party/abseil-cpp/absl/log/globals.h +28 -15
  2000. data/third_party/abseil-cpp/absl/log/internal/check_op.cc +20 -0
  2001. data/third_party/abseil-cpp/absl/log/internal/check_op.h +63 -21
  2002. data/third_party/abseil-cpp/absl/log/internal/conditions.h +2 -2
  2003. data/third_party/abseil-cpp/absl/log/internal/log_impl.h +23 -23
  2004. data/third_party/abseil-cpp/absl/log/internal/log_message.cc +104 -47
  2005. data/third_party/abseil-cpp/absl/log/internal/log_message.h +23 -4
  2006. data/third_party/abseil-cpp/absl/log/internal/nullstream.h +1 -10
  2007. data/third_party/abseil-cpp/absl/log/internal/strip.h +36 -0
  2008. data/third_party/abseil-cpp/absl/log/log.h +5 -1
  2009. data/third_party/abseil-cpp/absl/log/log_sink.h +11 -4
  2010. data/third_party/abseil-cpp/absl/log/vlog_is_on.h +3 -3
  2011. data/third_party/abseil-cpp/absl/meta/type_traits.h +138 -42
  2012. data/third_party/abseil-cpp/absl/numeric/int128.cc +0 -3
  2013. data/third_party/abseil-cpp/absl/numeric/int128.h +35 -5
  2014. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +14 -0
  2015. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +18 -0
  2016. data/third_party/abseil-cpp/absl/numeric/internal/bits.h +6 -2
  2017. data/third_party/abseil-cpp/absl/random/beta_distribution.h +8 -8
  2018. data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +9 -7
  2019. data/third_party/abseil-cpp/absl/random/distributions.h +11 -11
  2020. data/third_party/abseil-cpp/absl/random/seed_sequences.h +2 -0
  2021. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +61 -2
  2022. data/third_party/abseil-cpp/absl/status/status.cc +0 -4
  2023. data/third_party/abseil-cpp/absl/status/status.h +4 -4
  2024. data/third_party/abseil-cpp/absl/status/statusor.h +108 -142
  2025. data/third_party/abseil-cpp/absl/strings/ascii.cc +32 -71
  2026. data/third_party/abseil-cpp/absl/strings/cord.cc +20 -15
  2027. data/third_party/abseil-cpp/absl/strings/cord.h +68 -7
  2028. data/third_party/abseil-cpp/absl/strings/escaping.cc +96 -21
  2029. data/third_party/abseil-cpp/absl/strings/escaping.h +25 -8
  2030. data/third_party/abseil-cpp/absl/strings/has_absl_stringify.h +1 -0
  2031. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +10 -0
  2032. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +29 -9
  2033. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +2 -2
  2034. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +19 -13
  2035. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +23 -13
  2036. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +24 -24
  2037. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +12 -7
  2038. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +9 -4
  2039. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +5 -2
  2040. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +23 -2
  2041. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +5 -1
  2042. data/third_party/abseil-cpp/absl/strings/numbers.cc +107 -333
  2043. data/third_party/abseil-cpp/absl/strings/numbers.h +12 -151
  2044. data/third_party/abseil-cpp/absl/strings/str_cat.cc +49 -142
  2045. data/third_party/abseil-cpp/absl/strings/str_cat.h +70 -85
  2046. data/third_party/abseil-cpp/absl/strings/str_format.h +1 -1
  2047. data/third_party/abseil-cpp/absl/strings/str_join.h +19 -5
  2048. data/third_party/abseil-cpp/absl/strings/str_split.h +2 -2
  2049. data/third_party/abseil-cpp/absl/strings/string_view.h +3 -2
  2050. data/third_party/abseil-cpp/absl/strings/substitute.cc +4 -0
  2051. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +11 -2
  2052. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +5 -0
  2053. data/third_party/abseil-cpp/absl/synchronization/mutex.h +5 -4
  2054. data/third_party/abseil-cpp/absl/time/civil_time.h +2 -2
  2055. data/third_party/abseil-cpp/absl/time/clock.cc +15 -1
  2056. data/third_party/abseil-cpp/absl/time/duration.cc +58 -53
  2057. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  2058. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +1 -1
  2059. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +0 -29
  2060. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +3 -3
  2061. data/third_party/abseil-cpp/absl/time/time.h +73 -29
  2062. data/third_party/abseil-cpp/absl/types/compare.h +505 -0
  2063. data/third_party/abseil-cpp/absl/types/internal/optional.h +2 -2
  2064. data/third_party/abseil-cpp/absl/types/internal/variant.h +55 -67
  2065. data/third_party/abseil-cpp/absl/types/optional.h +15 -18
  2066. data/third_party/abseil-cpp/absl/types/span.h +3 -2
  2067. data/third_party/abseil-cpp/absl/types/variant.h +19 -24
  2068. data/third_party/abseil-cpp/absl/utility/utility.h +3 -41
  2069. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.cc +243 -0
  2070. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.cc +53 -0
  2071. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.cc +47 -0
  2072. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.cc +42 -0
  2073. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.cc +109 -0
  2074. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.cc +43 -0
  2075. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.cc +424 -0
  2076. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.cc +239 -0
  2077. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.cc +193 -0
  2078. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.cc +32 -0
  2079. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.cc +415 -0
  2080. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.cc +206 -0
  2081. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.cc +224 -0
  2082. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.cc +172 -0
  2083. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.cc +109 -0
  2084. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.cc +355 -0
  2085. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.cc +61 -0
  2086. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.cc +56 -0
  2087. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.cc +63 -0
  2088. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.cc +52 -0
  2089. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +13 -57
  2090. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.cc +241 -0
  2091. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.cc +932 -0
  2092. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.cc +669 -0
  2093. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.cc +164 -0
  2094. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.cc +276 -0
  2095. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.cc +84 -0
  2096. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.cc +229 -0
  2097. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.cc +434 -0
  2098. data/third_party/boringssl-with-bazel/src/crypto/bcm_support.h +119 -0
  2099. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.cc +658 -0
  2100. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.cc +268 -0
  2101. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.cc +511 -0
  2102. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.cc +50 -0
  2103. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.cc +193 -0
  2104. data/third_party/boringssl-with-bazel/src/crypto/bio/file.cc +292 -0
  2105. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.cc +152 -0
  2106. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +13 -55
  2107. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.cc +446 -0
  2108. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.cc +59 -0
  2109. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.cc +147 -0
  2110. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.cc +133 -0
  2111. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.cc +169 -0
  2112. data/third_party/boringssl-with-bazel/src/crypto/bn/bn_asn1.cc +57 -0
  2113. data/third_party/boringssl-with-bazel/src/crypto/bn/convert.cc +423 -0
  2114. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.cc +118 -0
  2115. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.cc +53 -0
  2116. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.cc +266 -0
  2117. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.cc +702 -0
  2118. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.cc +912 -0
  2119. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +13 -13
  2120. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.cc +156 -0
  2121. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.cc +224 -0
  2122. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +18 -18
  2123. data/third_party/boringssl-with-bazel/src/crypto/cipher/derive_key.cc +110 -0
  2124. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesctrhmac.cc +279 -0
  2125. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesgcmsiv.cc +845 -0
  2126. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_chacha20poly1305.cc +341 -0
  2127. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_des.cc +198 -0
  2128. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_null.cc +51 -0
  2129. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc2.cc +417 -0
  2130. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc4.cc +54 -0
  2131. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_tls.cc +599 -0
  2132. data/third_party/boringssl-with-bazel/src/crypto/cipher/get_cipher.cc +85 -0
  2133. data/third_party/boringssl-with-bazel/src/crypto/cipher/internal.h +240 -0
  2134. data/third_party/boringssl-with-bazel/src/crypto/cipher/tls_cbc.cc +476 -0
  2135. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.cc +631 -0
  2136. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +13 -13
  2137. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.cc +75 -0
  2138. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.cc +55 -0
  2139. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.cc +62 -0
  2140. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.cc +61 -0
  2141. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.cc +94 -0
  2142. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.cc +41 -0
  2143. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.cc +54 -0
  2144. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.cc +151 -0
  2145. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.h +13 -13
  2146. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.cc +287 -0
  2147. data/third_party/boringssl-with-bazel/src/crypto/crypto.cc +183 -0
  2148. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.cc +2154 -0
  2149. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.cc +18 -0
  2150. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +13 -13
  2151. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +13 -13
  2152. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.cc +529 -0
  2153. data/third_party/boringssl-with-bazel/src/crypto/des/des.cc +829 -0
  2154. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +27 -69
  2155. data/third_party/boringssl-with-bazel/src/crypto/dh/dh_asn1.cc +124 -0
  2156. data/third_party/boringssl-with-bazel/src/crypto/dh/params.cc +442 -0
  2157. data/third_party/boringssl-with-bazel/src/crypto/digest/digest_extra.cc +306 -0
  2158. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.cc +951 -0
  2159. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.cc +379 -0
  2160. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +13 -13
  2161. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_asn1.cc +570 -0
  2162. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_derive.cc +96 -0
  2163. data/third_party/boringssl-with-bazel/src/crypto/ec/hash_to_curve.cc +510 -0
  2164. data/third_party/boringssl-with-bazel/src/crypto/ec/internal.h +78 -0
  2165. data/third_party/boringssl-with-bazel/src/crypto/ecdh/ecdh.cc +73 -0
  2166. data/third_party/boringssl-with-bazel/src/crypto/ecdsa/ecdsa_asn1.cc +357 -0
  2167. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.cc +95 -0
  2168. data/third_party/boringssl-with-bazel/src/crypto/err/err.cc +810 -0
  2169. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +13 -13
  2170. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.cc +379 -0
  2171. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.cc +471 -0
  2172. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.cc +440 -0
  2173. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +13 -55
  2174. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.cc +153 -0
  2175. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.cc +142 -0
  2176. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.cc +279 -0
  2177. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.cc +230 -0
  2178. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.cc +286 -0
  2179. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.cc +103 -0
  2180. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.cc +225 -0
  2181. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.cc +236 -0
  2182. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.cc +609 -0
  2183. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.cc +198 -0
  2184. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.cc +109 -0
  2185. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.cc +237 -0
  2186. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.cc +98 -0
  2187. data/third_party/boringssl-with-bazel/src/crypto/evp/print.cc +342 -0
  2188. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.cc +216 -0
  2189. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.cc +114 -0
  2190. data/third_party/boringssl-with-bazel/src/crypto/ex_data.cc +141 -0
  2191. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.cc.inc +191 -0
  2192. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.cc.inc +1281 -0
  2193. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cbc.cc.inc +130 -0
  2194. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cfb.cc.inc +166 -0
  2195. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ctr.cc.inc +100 -0
  2196. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm.cc.inc +604 -0
  2197. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm_nohw.cc.inc +302 -0
  2198. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +450 -75
  2199. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.cc.inc +208 -0
  2200. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.cc.inc +84 -0
  2201. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ofb.cc.inc +53 -0
  2202. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/polyval.cc.inc +89 -0
  2203. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.cc +282 -0
  2204. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm_interface.h +729 -0
  2205. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.cc.inc +269 -0
  2206. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +554 -0
  2207. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.cc.inc +374 -0
  2208. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.cc.inc +225 -0
  2209. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.cc.inc +159 -0
  2210. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.cc.inc +191 -0
  2211. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.cc.inc +825 -0
  2212. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.cc.inc +87 -0
  2213. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.cc.inc +1227 -0
  2214. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.cc.inc +300 -0
  2215. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.cc.inc +339 -0
  2216. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.cc.inc +582 -0
  2217. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +52 -151
  2218. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.cc.inc +108 -0
  2219. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.cc.inc +430 -0
  2220. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.cc.inc +222 -0
  2221. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.cc.inc +698 -0
  2222. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.cc.inc +980 -0
  2223. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.cc.inc +260 -0
  2224. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.cc.inc +142 -0
  2225. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +20 -17
  2226. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.cc.inc +320 -0
  2227. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.cc.inc +459 -0
  2228. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.cc.inc +295 -0
  2229. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.cc.inc +672 -0
  2230. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.cc.inc +1242 -0
  2231. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.cc.inc +409 -0
  2232. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +14 -65
  2233. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.cc.inc +288 -0
  2234. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +26 -22
  2235. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.cc.inc +203 -0
  2236. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.cc.inc +443 -0
  2237. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +13 -15
  2238. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.cc.inc +250 -0
  2239. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.cc.inc +178 -0
  2240. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +13 -55
  2241. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +13 -47
  2242. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.cc.inc +226 -0
  2243. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +91 -91
  2244. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.cc.inc +986 -0
  2245. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.cc.inc +501 -0
  2246. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.cc.inc +439 -0
  2247. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.cc.inc +104 -0
  2248. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +19 -66
  2249. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.cc.inc +306 -0
  2250. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.cc.inc +1163 -0
  2251. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz-table.h +15 -10
  2252. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.cc.inc +741 -0
  2253. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.h +87 -25
  2254. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.cc.inc +749 -0
  2255. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +13 -13
  2256. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.cc.inc +179 -0
  2257. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.cc.inc +284 -0
  2258. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.cc.inc +269 -0
  2259. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.cc.inc +255 -0
  2260. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.cc.inc +221 -0
  2261. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.cc.inc +88 -0
  2262. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +278 -0
  2263. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +41 -24
  2264. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.cc +28 -0
  2265. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.cc.inc +112 -0
  2266. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.cc.inc +215 -0
  2267. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/internal.h +70 -0
  2268. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/keccak.cc.inc +279 -0
  2269. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mldsa/mldsa.cc.inc +1993 -0
  2270. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mlkem/mlkem.cc.inc +1165 -0
  2271. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.cc.inc +214 -0
  2272. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +19 -104
  2273. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.cc.inc +483 -0
  2274. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.cc.inc +147 -0
  2275. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +13 -56
  2276. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.cc.inc +379 -0
  2277. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.cc.inc +983 -0
  2278. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1296 -0
  2279. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  2280. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.cc.inc +1042 -0
  2281. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +36 -36
  2282. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +327 -0
  2283. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +51 -60
  2284. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.cc.inc +390 -0
  2285. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.cc.inc +299 -0
  2286. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  2287. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/address.h +119 -0
  2288. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.cc.inc +169 -0
  2289. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.h +58 -0
  2290. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.cc.inc +161 -0
  2291. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.h +70 -0
  2292. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/params.h +78 -0
  2293. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +329 -0
  2294. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.cc.inc +173 -0
  2295. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.h +85 -0
  2296. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.cc.inc +171 -0
  2297. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.h +50 -0
  2298. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +13 -13
  2299. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  2300. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.cc +1095 -0
  2301. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.cc +2185 -0
  2302. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +13 -13
  2303. data/third_party/boringssl-with-bazel/src/crypto/internal.h +323 -449
  2304. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +13 -13
  2305. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.cc +869 -0
  2306. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +31 -75
  2307. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.cc +309 -0
  2308. data/third_party/boringssl-with-bazel/src/crypto/md4/md4.cc +194 -0
  2309. data/third_party/boringssl-with-bazel/src/crypto/md5/internal.h +37 -0
  2310. data/third_party/boringssl-with-bazel/src/crypto/md5/md5.cc +243 -0
  2311. data/third_party/boringssl-with-bazel/src/crypto/mem.cc +583 -0
  2312. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.cc +90 -0
  2313. data/third_party/boringssl-with-bazel/src/crypto/mlkem/mlkem.cc +152 -0
  2314. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.cc +519 -0
  2315. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +18 -57
  2316. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.cc +80 -0
  2317. data/third_party/boringssl-with-bazel/src/crypto/pem/internal.h +44 -0
  2318. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.cc +149 -0
  2319. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.cc +254 -0
  2320. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.cc +741 -0
  2321. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.cc +45 -0
  2322. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.cc +208 -0
  2323. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.cc +141 -0
  2324. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.cc +22 -0
  2325. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.cc +22 -0
  2326. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +13 -13
  2327. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.cc +193 -0
  2328. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.cc +526 -0
  2329. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +14 -54
  2330. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.cc +275 -0
  2331. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.cc +487 -0
  2332. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.cc +1304 -0
  2333. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +13 -13
  2334. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.cc +314 -0
  2335. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.cc +310 -0
  2336. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.cc +850 -0
  2337. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +13 -13
  2338. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.cc +262 -0
  2339. data/third_party/boringssl-with-bazel/src/crypto/rand/deterministic.cc +65 -0
  2340. data/third_party/boringssl-with-bazel/src/crypto/rand/fork_detect.cc +194 -0
  2341. data/third_party/boringssl-with-bazel/src/crypto/rand/forkunsafe.cc +44 -0
  2342. data/third_party/boringssl-with-bazel/src/crypto/rand/getentropy.cc +60 -0
  2343. data/third_party/boringssl-with-bazel/src/crypto/rand/getrandom_fillin.h +64 -0
  2344. data/third_party/boringssl-with-bazel/src/crypto/rand/ios.cc +42 -0
  2345. data/third_party/boringssl-with-bazel/src/crypto/rand/passive.cc +178 -0
  2346. data/third_party/boringssl-with-bazel/src/crypto/rand/rand.cc +77 -0
  2347. data/third_party/boringssl-with-bazel/src/crypto/rand/sysrand_internal.h +37 -0
  2348. data/third_party/boringssl-with-bazel/src/crypto/rand/trusty.cc +46 -0
  2349. data/third_party/boringssl-with-bazel/src/crypto/rand/urandom.cc +328 -0
  2350. data/third_party/boringssl-with-bazel/src/crypto/rand/windows.cc +102 -0
  2351. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.cc +56 -0
  2352. data/third_party/boringssl-with-bazel/src/crypto/refcount.cc +59 -0
  2353. data/third_party/boringssl-with-bazel/src/crypto/rsa/internal.h +36 -0
  2354. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_asn1.cc +283 -0
  2355. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_crypt.cc +531 -0
  2356. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_extra.cc +19 -0
  2357. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_print.cc +27 -0
  2358. data/third_party/boringssl-with-bazel/src/crypto/sha/sha1.cc +52 -0
  2359. data/third_party/boringssl-with-bazel/src/crypto/sha/sha256.cc +87 -0
  2360. data/third_party/boringssl-with-bazel/src/crypto/sha/sha512.cc +104 -0
  2361. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.cc +79 -0
  2362. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/slhdsa.cc +113 -0
  2363. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/internal.h +204 -0
  2364. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/spake2plus.cc +501 -0
  2365. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.cc +496 -0
  2366. data/third_party/boringssl-with-bazel/src/crypto/thread.cc +68 -0
  2367. data/third_party/boringssl-with-bazel/src/crypto/thread_none.cc +51 -0
  2368. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.cc +151 -0
  2369. data/third_party/boringssl-with-bazel/src/crypto/thread_win.cc +240 -0
  2370. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +13 -13
  2371. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.cc +1656 -0
  2372. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.cc +685 -0
  2373. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.cc +1263 -0
  2374. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.cc +52 -0
  2375. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.cc +97 -0
  2376. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.cc +74 -0
  2377. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.cc +136 -0
  2378. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.cc +542 -0
  2379. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.cc +355 -0
  2380. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.cc +227 -0
  2381. data/third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h +13 -55
  2382. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.cc +37 -0
  2383. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +13 -61
  2384. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.cc +185 -0
  2385. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.cc +796 -0
  2386. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.cc +364 -0
  2387. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.cc +103 -0
  2388. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.cc +203 -0
  2389. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.cc +287 -0
  2390. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.cc +79 -0
  2391. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.cc +181 -0
  2392. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.cc +31 -0
  2393. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.cc +593 -0
  2394. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.cc +95 -0
  2395. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.cc +102 -0
  2396. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.cc +374 -0
  2397. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.cc +444 -0
  2398. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.cc +557 -0
  2399. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.cc +73 -0
  2400. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.cc +114 -0
  2401. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.cc +228 -0
  2402. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.cc +79 -0
  2403. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.cc +164 -0
  2404. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.cc +81 -0
  2405. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.cc +304 -0
  2406. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.cc +514 -0
  2407. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.cc +89 -0
  2408. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.cc +101 -0
  2409. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.cc +109 -0
  2410. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.cc +183 -0
  2411. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.cc +590 -0
  2412. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.cc +131 -0
  2413. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.cc +1342 -0
  2414. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.cc +47 -0
  2415. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.cc +186 -0
  2416. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.cc +238 -0
  2417. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.cc +66 -0
  2418. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.cc +44 -0
  2419. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.cc +139 -0
  2420. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.cc +554 -0
  2421. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.cc +164 -0
  2422. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.cc +257 -0
  2423. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.cc +198 -0
  2424. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.cc +118 -0
  2425. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.cc +147 -0
  2426. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.cc +249 -0
  2427. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.cc +1600 -0
  2428. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.cc +440 -0
  2429. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.cc +235 -0
  2430. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.cc +365 -0
  2431. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.cc +67 -0
  2432. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.cc +91 -0
  2433. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.cc +107 -0
  2434. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.cc +318 -0
  2435. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.cc +55 -0
  2436. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.cc +342 -0
  2437. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.cc +36 -0
  2438. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.cc +492 -0
  2439. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.cc +170 -0
  2440. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.cc +74 -0
  2441. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.cc +51 -0
  2442. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.cc +34 -0
  2443. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.cc +28 -0
  2444. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.cc +506 -0
  2445. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.cc +169 -0
  2446. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.cc +1529 -0
  2447. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +13 -13
  2448. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +13 -47
  2449. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +13 -51
  2450. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +14 -14
  2451. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +37 -63
  2452. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +13 -13
  2453. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +248 -328
  2454. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +24 -55
  2455. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +13 -55
  2456. data/third_party/boringssl-with-bazel/src/include/openssl/bcm_public.h +82 -0
  2457. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +21 -61
  2458. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +13 -13
  2459. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +13 -55
  2460. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +28 -130
  2461. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +13 -55
  2462. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +13 -13
  2463. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +31 -16
  2464. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +13 -55
  2465. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +13 -13
  2466. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +31 -59
  2467. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +13 -13
  2468. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +13 -55
  2469. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +13 -13
  2470. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +34 -25
  2471. data/third_party/boringssl-with-bazel/src/include/openssl/ctrdrbg.h +13 -13
  2472. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +13 -13
  2473. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +13 -55
  2474. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +17 -55
  2475. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +19 -56
  2476. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +17 -58
  2477. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +13 -13
  2478. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +13 -13
  2479. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +14 -66
  2480. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +31 -72
  2481. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +14 -65
  2482. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +13 -51
  2483. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +13 -13
  2484. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +13 -107
  2485. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +14 -56
  2486. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +13 -55
  2487. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +13 -107
  2488. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/kyber.h +23 -13
  2489. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +13 -13
  2490. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +13 -55
  2491. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +21 -19
  2492. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +13 -13
  2493. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +13 -13
  2494. data/third_party/boringssl-with-bazel/src/include/openssl/kdf.h +13 -13
  2495. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +13 -55
  2496. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +13 -55
  2497. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +13 -55
  2498. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +13 -55
  2499. data/third_party/boringssl-with-bazel/src/include/openssl/mldsa.h +130 -0
  2500. data/third_party/boringssl-with-bazel/src/include/openssl/mlkem.h +222 -0
  2501. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +30 -69
  2502. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +13 -55
  2503. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +13 -13
  2504. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +13 -13
  2505. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +13 -13
  2506. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +13 -13
  2507. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +13 -13
  2508. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +25 -64
  2509. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +13 -13
  2510. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +13 -13
  2511. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +13 -55
  2512. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +13 -13
  2513. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +13 -13
  2514. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +13 -13
  2515. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +13 -13
  2516. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +13 -55
  2517. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +13 -55
  2518. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +23 -63
  2519. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +13 -13
  2520. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +15 -15
  2521. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +15 -95
  2522. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +13 -13
  2523. data/third_party/boringssl-with-bazel/src/include/openssl/slhdsa.h +174 -0
  2524. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +60 -32
  2525. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +13 -13
  2526. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +465 -317
  2527. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +15 -114
  2528. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +13 -55
  2529. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +23 -13
  2530. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +15 -57
  2531. data/third_party/boringssl-with-bazel/src/include/openssl/time.h +13 -13
  2532. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +27 -156
  2533. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +15 -15
  2534. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +13 -55
  2535. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +14 -84
  2536. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +13 -13
  2537. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +13 -13
  2538. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h +13 -53
  2539. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +15 -14
  2540. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +684 -441
  2541. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +129 -168
  2542. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +177 -127
  2543. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +21 -127
  2544. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +112 -97
  2545. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +456 -222
  2546. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +54 -47
  2547. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +701 -491
  2548. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +66 -73
  2549. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +61 -153
  2550. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +234 -335
  2551. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +104 -216
  2552. data/third_party/boringssl-with-bazel/src/ssl/internal.h +1009 -504
  2553. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +87 -169
  2554. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +29 -159
  2555. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +39 -113
  2556. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +103 -111
  2557. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +52 -145
  2558. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +22 -24
  2559. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +117 -157
  2560. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +229 -365
  2561. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +216 -31
  2562. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +13 -109
  2563. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +128 -32
  2564. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +244 -360
  2565. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +97 -103
  2566. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +101 -236
  2567. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +17 -91
  2568. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +109 -157
  2569. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +48 -28
  2570. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +66 -195
  2571. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +45 -176
  2572. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +60 -43
  2573. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +152 -86
  2574. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +296 -163
  2575. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +247 -108
  2576. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +64 -117
  2577. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +55 -157
  2578. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +6 -0
  2579. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +6 -0
  2580. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_adx.h +4 -1
  2581. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +1 -1
  2582. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +3 -0
  2583. data/third_party/upb/upb/base/string_view.h +1 -1
  2584. data/third_party/upb/upb/json/decode.c +60 -13
  2585. data/third_party/upb/upb/json/decode.h +26 -3
  2586. data/third_party/upb/upb/json/encode.c +2 -2
  2587. data/third_party/upb/upb/lex/round_trip.c +10 -0
  2588. data/third_party/upb/upb/mem/arena.c +80 -4
  2589. data/third_party/upb/upb/mem/arena.h +20 -9
  2590. data/third_party/upb/upb/mem/arena.hpp +5 -1
  2591. data/third_party/upb/upb/mem/internal/arena.h +11 -8
  2592. data/third_party/upb/upb/message/accessors.c +6 -7
  2593. data/third_party/upb/upb/message/accessors.h +186 -376
  2594. data/third_party/upb/upb/message/array.c +26 -3
  2595. data/third_party/upb/upb/message/array.h +17 -9
  2596. data/third_party/upb/upb/message/compat.c +5 -5
  2597. data/third_party/upb/upb/message/compat.h +3 -3
  2598. data/third_party/upb/upb/message/copy.c +23 -20
  2599. data/third_party/upb/upb/message/internal/accessors.h +617 -55
  2600. data/third_party/upb/upb/message/internal/array.h +23 -15
  2601. data/third_party/upb/upb/message/internal/compare_unknown.c +289 -0
  2602. data/third_party/upb/upb/message/internal/compare_unknown.h +49 -0
  2603. data/third_party/upb/upb/message/internal/extension.c +12 -12
  2604. data/third_party/upb/upb/message/internal/extension.h +9 -12
  2605. data/third_party/upb/upb/message/internal/map.h +15 -0
  2606. data/third_party/upb/upb/message/internal/map_sorter.h +4 -5
  2607. data/third_party/upb/upb/message/internal/message.c +22 -6
  2608. data/third_party/upb/upb/message/internal/message.h +11 -0
  2609. data/third_party/upb/upb/message/internal/tagged_ptr.h +5 -5
  2610. data/third_party/upb/upb/message/internal/types.h +41 -1
  2611. data/third_party/upb/upb/message/map.c +25 -0
  2612. data/third_party/upb/upb/message/map.h +11 -7
  2613. data/third_party/upb/upb/message/merge.c +38 -0
  2614. data/third_party/upb/upb/message/merge.h +26 -0
  2615. data/third_party/upb/upb/message/message.c +83 -4
  2616. data/third_party/upb/upb/message/message.h +16 -1
  2617. data/third_party/upb/upb/message/tagged_ptr.h +4 -8
  2618. data/third_party/upb/upb/message/value.h +26 -0
  2619. data/third_party/upb/upb/mini_descriptor/build_enum.c +3 -3
  2620. data/third_party/upb/upb/mini_descriptor/build_enum.h +6 -14
  2621. data/third_party/upb/upb/mini_descriptor/decode.c +19 -3
  2622. data/third_party/upb/upb/mini_descriptor/link.c +23 -21
  2623. data/third_party/upb/upb/mini_table/enum.h +2 -4
  2624. data/third_party/upb/upb/mini_table/extension.h +4 -12
  2625. data/third_party/upb/upb/mini_table/extension_registry.c +18 -0
  2626. data/third_party/upb/upb/mini_table/extension_registry.h +17 -0
  2627. data/third_party/upb/upb/mini_table/field.h +12 -38
  2628. data/third_party/upb/upb/mini_table/file.h +6 -19
  2629. data/third_party/upb/upb/mini_table/internal/enum.h +1 -1
  2630. data/third_party/upb/upb/mini_table/internal/extension.h +18 -9
  2631. data/third_party/upb/upb/mini_table/internal/field.h +23 -23
  2632. data/third_party/upb/upb/mini_table/internal/file.h +7 -7
  2633. data/third_party/upb/upb/mini_table/internal/message.c +21 -1
  2634. data/third_party/upb/upb/mini_table/internal/message.h +80 -36
  2635. data/third_party/upb/upb/mini_table/internal/sub.h +9 -4
  2636. data/third_party/upb/upb/mini_table/message.h +23 -22
  2637. data/third_party/upb/upb/mini_table/sub.h +4 -12
  2638. data/third_party/upb/upb/port/def.inc +108 -12
  2639. data/third_party/upb/upb/port/undef.inc +8 -1
  2640. data/third_party/upb/upb/reflection/common.h +1 -11
  2641. data/third_party/upb/upb/reflection/def.hpp +35 -0
  2642. data/third_party/upb/upb/reflection/def_pool.h +2 -2
  2643. data/third_party/upb/upb/reflection/descriptor_bootstrap.h +19 -0
  2644. data/third_party/upb/upb/reflection/enum_def.c +5 -1
  2645. data/third_party/upb/upb/reflection/enum_def.h +1 -0
  2646. data/third_party/upb/upb/reflection/enum_value_def.c +3 -8
  2647. data/third_party/upb/upb/reflection/field_def.c +72 -46
  2648. data/third_party/upb/upb/reflection/field_def.h +4 -0
  2649. data/third_party/upb/upb/reflection/file_def.c +30 -4
  2650. data/third_party/upb/upb/reflection/file_def.h +3 -0
  2651. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
  2652. data/third_party/upb/upb/reflection/message.c +26 -9
  2653. data/third_party/upb/upb/reflection/message.h +2 -2
  2654. data/third_party/upb/upb/reflection/message_def.c +14 -9
  2655. data/third_party/upb/upb/reflection/method_def.h +8 -7
  2656. data/third_party/upb/upb/reflection/service_def.h +6 -5
  2657. data/third_party/upb/upb/text/encode.c +53 -389
  2658. data/third_party/upb/upb/text/encode.h +1 -11
  2659. data/third_party/upb/upb/text/internal/encode.c +180 -0
  2660. data/third_party/upb/upb/text/internal/encode.h +240 -0
  2661. data/third_party/upb/upb/text/options.h +22 -0
  2662. data/third_party/upb/upb/wire/decode.c +160 -94
  2663. data/third_party/upb/upb/wire/decode.h +15 -2
  2664. data/third_party/upb/upb/wire/encode.c +89 -48
  2665. data/third_party/upb/upb/wire/encode.h +12 -1
  2666. data/third_party/upb/upb/wire/eps_copy_input_stream.h +3 -3
  2667. data/third_party/upb/upb/wire/internal/decode_fast.c +28 -29
  2668. data/third_party/upb/upb/wire/internal/reader.h +3 -3
  2669. data/third_party/upb/upb/wire/reader.c +1 -2
  2670. data/third_party/upb/upb/wire/reader.h +4 -8
  2671. metadata +642 -545
  2672. data/src/core/client_channel/config_selector.cc +0 -60
  2673. data/src/core/ext/gcp/metadata_query.cc +0 -137
  2674. data/src/core/ext/gcp/metadata_query.h +0 -87
  2675. data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
  2676. data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
  2677. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +0 -45
  2678. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +0 -67
  2679. data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
  2680. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +0 -419
  2681. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +0 -81
  2682. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.h +0 -30
  2683. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +0 -400
  2684. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +0 -106
  2685. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.h +0 -33
  2686. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.c +0 -104
  2687. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +0 -32
  2688. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.c +0 -66
  2689. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +0 -47
  2690. data/src/core/handshaker/security/tsi_error.cc +0 -31
  2691. data/src/core/handshaker/security/tsi_error.h +0 -30
  2692. data/src/core/lib/avl/avl.h +0 -325
  2693. data/src/core/lib/backoff/backoff.cc +0 -47
  2694. data/src/core/lib/backoff/backoff.h +0 -89
  2695. data/src/core/lib/backoff/random_early_detection.cc +0 -33
  2696. data/src/core/lib/backoff/random_early_detection.h +0 -62
  2697. data/src/core/lib/channel/call_tracer.cc +0 -364
  2698. data/src/core/lib/channel/call_tracer.h +0 -226
  2699. data/src/core/lib/channel/channel_stack_trace.cc +0 -19
  2700. data/src/core/lib/channel/channel_stack_trace.h +0 -24
  2701. data/src/core/lib/channel/context.h +0 -105
  2702. data/src/core/lib/channel/metrics.cc +0 -334
  2703. data/src/core/lib/channel/metrics.h +0 -365
  2704. data/src/core/lib/channel/tcp_tracer.h +0 -144
  2705. data/src/core/lib/config/config_vars.cc +0 -154
  2706. data/src/core/lib/config/config_vars.h +0 -131
  2707. data/src/core/lib/config/config_vars_non_generated.cc +0 -49
  2708. data/src/core/lib/config/core_configuration.cc +0 -112
  2709. data/src/core/lib/config/core_configuration.h +0 -244
  2710. data/src/core/lib/config/load_config.cc +0 -79
  2711. data/src/core/lib/config/load_config.h +0 -55
  2712. data/src/core/lib/debug/event_log.cc +0 -88
  2713. data/src/core/lib/debug/event_log.h +0 -81
  2714. data/src/core/lib/debug/histogram_view.cc +0 -69
  2715. data/src/core/lib/debug/histogram_view.h +0 -37
  2716. data/src/core/lib/debug/stats.cc +0 -68
  2717. data/src/core/lib/debug/stats.h +0 -64
  2718. data/src/core/lib/debug/stats_data.cc +0 -752
  2719. data/src/core/lib/debug/stats_data.h +0 -579
  2720. data/src/core/lib/event_engine/trace.cc +0 -25
  2721. data/src/core/lib/event_engine/trace.h +0 -48
  2722. data/src/core/lib/gpr/alloc.cc +0 -73
  2723. data/src/core/lib/gpr/alloc.h +0 -28
  2724. data/src/core/lib/gpr/android/log.cc +0 -79
  2725. data/src/core/lib/gpr/atm.cc +0 -35
  2726. data/src/core/lib/gpr/iphone/cpu.cc +0 -44
  2727. data/src/core/lib/gpr/linux/cpu.cc +0 -87
  2728. data/src/core/lib/gpr/linux/log.cc +0 -114
  2729. data/src/core/lib/gpr/log.cc +0 -166
  2730. data/src/core/lib/gpr/msys/tmpfile.cc +0 -59
  2731. data/src/core/lib/gpr/posix/cpu.cc +0 -84
  2732. data/src/core/lib/gpr/posix/log.cc +0 -111
  2733. data/src/core/lib/gpr/posix/string.cc +0 -72
  2734. data/src/core/lib/gpr/posix/sync.cc +0 -161
  2735. data/src/core/lib/gpr/posix/time.cc +0 -125
  2736. data/src/core/lib/gpr/posix/tmpfile.cc +0 -73
  2737. data/src/core/lib/gpr/spinlock.h +0 -53
  2738. data/src/core/lib/gpr/string.cc +0 -344
  2739. data/src/core/lib/gpr/string.h +0 -112
  2740. data/src/core/lib/gpr/sync.cc +0 -126
  2741. data/src/core/lib/gpr/sync_abseil.cc +0 -110
  2742. data/src/core/lib/gpr/time.cc +0 -271
  2743. data/src/core/lib/gpr/time_precise.cc +0 -168
  2744. data/src/core/lib/gpr/time_precise.h +0 -69
  2745. data/src/core/lib/gpr/tmpfile.h +0 -32
  2746. data/src/core/lib/gpr/useful.h +0 -184
  2747. data/src/core/lib/gpr/windows/cpu.cc +0 -35
  2748. data/src/core/lib/gpr/windows/log.cc +0 -116
  2749. data/src/core/lib/gpr/windows/string.cc +0 -69
  2750. data/src/core/lib/gpr/windows/string_util.cc +0 -55
  2751. data/src/core/lib/gpr/windows/sync.cc +0 -124
  2752. data/src/core/lib/gpr/windows/time.cc +0 -108
  2753. data/src/core/lib/gpr/windows/tmpfile.cc +0 -68
  2754. data/src/core/lib/gprpp/atomic_utils.h +0 -47
  2755. data/src/core/lib/gprpp/bitset.h +0 -225
  2756. data/src/core/lib/gprpp/chunked_vector.h +0 -258
  2757. data/src/core/lib/gprpp/construct_destruct.h +0 -40
  2758. data/src/core/lib/gprpp/cpp_impl_of.h +0 -49
  2759. data/src/core/lib/gprpp/crash.cc +0 -42
  2760. data/src/core/lib/gprpp/crash.h +0 -37
  2761. data/src/core/lib/gprpp/debug_location.h +0 -99
  2762. data/src/core/lib/gprpp/directory_reader.h +0 -48
  2763. data/src/core/lib/gprpp/down_cast.h +0 -49
  2764. data/src/core/lib/gprpp/dual_ref_counted.h +0 -365
  2765. data/src/core/lib/gprpp/env.h +0 -53
  2766. data/src/core/lib/gprpp/examine_stack.cc +0 -43
  2767. data/src/core/lib/gprpp/examine_stack.h +0 -45
  2768. data/src/core/lib/gprpp/fork.cc +0 -241
  2769. data/src/core/lib/gprpp/fork.h +0 -98
  2770. data/src/core/lib/gprpp/host_port.cc +0 -116
  2771. data/src/core/lib/gprpp/host_port.h +0 -57
  2772. data/src/core/lib/gprpp/if_list.h +0 -4530
  2773. data/src/core/lib/gprpp/linux/env.cc +0 -62
  2774. data/src/core/lib/gprpp/load_file.cc +0 -77
  2775. data/src/core/lib/gprpp/load_file.h +0 -34
  2776. data/src/core/lib/gprpp/manual_constructor.h +0 -146
  2777. data/src/core/lib/gprpp/match.h +0 -75
  2778. data/src/core/lib/gprpp/memory.h +0 -52
  2779. data/src/core/lib/gprpp/mpscq.cc +0 -108
  2780. data/src/core/lib/gprpp/mpscq.h +0 -100
  2781. data/src/core/lib/gprpp/no_destruct.h +0 -95
  2782. data/src/core/lib/gprpp/notification.h +0 -67
  2783. data/src/core/lib/gprpp/orphanable.h +0 -153
  2784. data/src/core/lib/gprpp/overload.h +0 -59
  2785. data/src/core/lib/gprpp/packed_table.h +0 -40
  2786. data/src/core/lib/gprpp/per_cpu.cc +0 -34
  2787. data/src/core/lib/gprpp/per_cpu.h +0 -103
  2788. data/src/core/lib/gprpp/posix/directory_reader.cc +0 -82
  2789. data/src/core/lib/gprpp/posix/env.cc +0 -47
  2790. data/src/core/lib/gprpp/posix/stat.cc +0 -56
  2791. data/src/core/lib/gprpp/posix/thd.cc +0 -247
  2792. data/src/core/lib/gprpp/ref_counted.h +0 -395
  2793. data/src/core/lib/gprpp/ref_counted_ptr.h +0 -445
  2794. data/src/core/lib/gprpp/ref_counted_string.cc +0 -43
  2795. data/src/core/lib/gprpp/ref_counted_string.h +0 -161
  2796. data/src/core/lib/gprpp/single_set_ptr.h +0 -88
  2797. data/src/core/lib/gprpp/sorted_pack.h +0 -89
  2798. data/src/core/lib/gprpp/stat.h +0 -36
  2799. data/src/core/lib/gprpp/status_helper.cc +0 -453
  2800. data/src/core/lib/gprpp/status_helper.h +0 -190
  2801. data/src/core/lib/gprpp/strerror.cc +0 -41
  2802. data/src/core/lib/gprpp/strerror.h +0 -29
  2803. data/src/core/lib/gprpp/sync.h +0 -200
  2804. data/src/core/lib/gprpp/table.h +0 -452
  2805. data/src/core/lib/gprpp/tchar.cc +0 -49
  2806. data/src/core/lib/gprpp/tchar.h +0 -33
  2807. data/src/core/lib/gprpp/thd.h +0 -195
  2808. data/src/core/lib/gprpp/time.cc +0 -242
  2809. data/src/core/lib/gprpp/time.h +0 -384
  2810. data/src/core/lib/gprpp/time_averaged_stats.cc +0 -60
  2811. data/src/core/lib/gprpp/time_averaged_stats.h +0 -79
  2812. data/src/core/lib/gprpp/time_util.cc +0 -82
  2813. data/src/core/lib/gprpp/time_util.h +0 -41
  2814. data/src/core/lib/gprpp/type_list.h +0 -32
  2815. data/src/core/lib/gprpp/unique_type_name.h +0 -104
  2816. data/src/core/lib/gprpp/uuid_v4.cc +0 -37
  2817. data/src/core/lib/gprpp/uuid_v4.h +0 -36
  2818. data/src/core/lib/gprpp/validation_errors.cc +0 -65
  2819. data/src/core/lib/gprpp/validation_errors.h +0 -134
  2820. data/src/core/lib/gprpp/windows/directory_reader.cc +0 -81
  2821. data/src/core/lib/gprpp/windows/env.cc +0 -56
  2822. data/src/core/lib/gprpp/windows/stat.cc +0 -52
  2823. data/src/core/lib/gprpp/windows/thd.cc +0 -184
  2824. data/src/core/lib/gprpp/work_serializer.cc +0 -558
  2825. data/src/core/lib/gprpp/work_serializer.h +0 -106
  2826. data/src/core/lib/gprpp/xxhash_inline.h +0 -29
  2827. data/src/core/lib/http/format_request.cc +0 -136
  2828. data/src/core/lib/http/format_request.h +0 -37
  2829. data/src/core/lib/http/httpcli.cc +0 -392
  2830. data/src/core/lib/http/httpcli.h +0 -267
  2831. data/src/core/lib/http/httpcli_security_connector.cc +0 -213
  2832. data/src/core/lib/http/httpcli_ssl_credentials.h +0 -38
  2833. data/src/core/lib/http/parser.cc +0 -451
  2834. data/src/core/lib/http/parser.h +0 -129
  2835. data/src/core/lib/iomgr/ev_windows.cc +0 -30
  2836. data/src/core/lib/iomgr/gethostname.h +0 -26
  2837. data/src/core/lib/iomgr/gethostname_fallback.cc +0 -30
  2838. data/src/core/lib/iomgr/gethostname_host_name_max.cc +0 -40
  2839. data/src/core/lib/iomgr/gethostname_sysconf.cc +0 -40
  2840. data/src/core/lib/iomgr/grpc_if_nametoindex.h +0 -30
  2841. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +0 -43
  2842. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +0 -39
  2843. data/src/core/lib/json/json.h +0 -29
  2844. data/src/core/lib/json/json_args.h +0 -34
  2845. data/src/core/lib/json/json_channel_args.h +0 -42
  2846. data/src/core/lib/json/json_object_loader.cc +0 -215
  2847. data/src/core/lib/json/json_object_loader.h +0 -645
  2848. data/src/core/lib/json/json_reader.cc +0 -956
  2849. data/src/core/lib/json/json_reader.h +0 -34
  2850. data/src/core/lib/json/json_util.cc +0 -101
  2851. data/src/core/lib/json/json_util.h +0 -164
  2852. data/src/core/lib/json/json_writer.cc +0 -339
  2853. data/src/core/lib/json/json_writer.h +0 -33
  2854. data/src/core/lib/matchers/matchers.cc +0 -330
  2855. data/src/core/lib/matchers/matchers.h +0 -163
  2856. data/src/core/lib/promise/trace.cc +0 -20
  2857. data/src/core/lib/promise/trace.h +0 -24
  2858. data/src/core/lib/resource_quota/trace.cc +0 -19
  2859. data/src/core/lib/resource_quota/trace.h +0 -24
  2860. data/src/core/lib/slice/slice_refcount.cc +0 -20
  2861. data/src/core/lib/surface/api_trace.cc +0 -25
  2862. data/src/core/lib/surface/api_trace.h +0 -52
  2863. data/src/core/lib/surface/call_trace.h +0 -24
  2864. data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
  2865. data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
  2866. data/src/core/lib/transport/batch_builder.cc +0 -172
  2867. data/src/core/lib/transport/batch_builder.h +0 -474
  2868. data/src/core/lib/uri/uri_parser.cc +0 -372
  2869. data/src/core/lib/uri/uri_parser.h +0 -101
  2870. data/src/core/resolver/binder/binder_resolver.cc +0 -154
  2871. data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
  2872. data/src/core/resolver/xds/xds_resolver_trace.h +0 -30
  2873. data/src/core/xds/grpc/upb_utils.h +0 -45
  2874. data/src/core/xds/grpc/xds_http_filters.cc +0 -116
  2875. data/src/core/xds/grpc/xds_http_filters.h +0 -182
  2876. data/src/core/xds/xds_client/xds_client_stats.cc +0 -174
  2877. data/src/core/xds/xds_client/xds_client_stats.h +0 -258
  2878. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +0 -44
  2879. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +0 -284
  2880. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +0 -95
  2881. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +0 -89
  2882. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +0 -84
  2883. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +0 -151
  2884. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +0 -85
  2885. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +0 -465
  2886. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +0 -279
  2887. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +0 -235
  2888. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +0 -74
  2889. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +0 -457
  2890. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +0 -245
  2891. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +0 -259
  2892. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +0 -214
  2893. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +0 -183
  2894. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +0 -397
  2895. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +0 -103
  2896. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +0 -98
  2897. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +0 -105
  2898. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +0 -94
  2899. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +0 -241
  2900. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +0 -973
  2901. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +0 -708
  2902. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +0 -212
  2903. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +0 -317
  2904. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +0 -126
  2905. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +0 -268
  2906. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +0 -475
  2907. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +0 -726
  2908. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +0 -309
  2909. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +0 -544
  2910. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.c +0 -92
  2911. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +0 -235
  2912. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +0 -334
  2913. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.c +0 -192
  2914. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +0 -480
  2915. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +0 -102
  2916. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +0 -189
  2917. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +0 -133
  2918. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +0 -169
  2919. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +0 -57
  2920. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +0 -465
  2921. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +0 -158
  2922. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +0 -53
  2923. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +0 -266
  2924. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +0 -718
  2925. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +0 -913
  2926. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +0 -156
  2927. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +0 -224
  2928. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +0 -127
  2929. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +0 -152
  2930. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +0 -284
  2931. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +0 -841
  2932. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +0 -341
  2933. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_des.c +0 -228
  2934. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +0 -90
  2935. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +0 -455
  2936. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +0 -94
  2937. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +0 -598
  2938. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +0 -237
  2939. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +0 -514
  2940. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +0 -647
  2941. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
  2942. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +0 -75
  2943. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.c +0 -55
  2944. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.c +0 -62
  2945. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +0 -61
  2946. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.c +0 -93
  2947. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.c +0 -41
  2948. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +0 -54
  2949. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.c +0 -148
  2950. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.c +0 -292
  2951. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +0 -242
  2952. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +0 -2157
  2953. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.c +0 -18
  2954. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +0 -523
  2955. data/third_party/boringssl-with-bazel/src/crypto/des/des.c +0 -871
  2956. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +0 -165
  2957. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +0 -480
  2958. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +0 -266
  2959. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +0 -990
  2960. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -421
  2961. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +0 -572
  2962. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +0 -96
  2963. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +0 -508
  2964. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +0 -78
  2965. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +0 -124
  2966. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +0 -265
  2967. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.c +0 -91
  2968. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +0 -903
  2969. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +0 -430
  2970. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +0 -547
  2971. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +0 -483
  2972. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.c +0 -137
  2973. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.c +0 -120
  2974. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +0 -338
  2975. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +0 -274
  2976. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +0 -332
  2977. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +0 -100
  2978. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +0 -224
  2979. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.c +0 -232
  2980. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +0 -646
  2981. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +0 -241
  2982. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +0 -106
  2983. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +0 -236
  2984. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +0 -146
  2985. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +0 -381
  2986. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +0 -209
  2987. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +0 -156
  2988. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +0 -236
  2989. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c +0 -106
  2990. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c +0 -1281
  2991. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c +0 -242
  2992. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +0 -124
  2993. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +0 -275
  2994. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.c +0 -310
  2995. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.c +0 -541
  2996. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c +0 -428
  2997. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +0 -267
  2998. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c +0 -201
  2999. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c +0 -234
  3000. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +0 -909
  3001. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +0 -87
  3002. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +0 -1276
  3003. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +0 -397
  3004. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +0 -331
  3005. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c +0 -624
  3006. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.c +0 -146
  3007. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +0 -532
  3008. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +0 -222
  3009. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +0 -744
  3010. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +0 -1077
  3011. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +0 -356
  3012. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +0 -137
  3013. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c +0 -363
  3014. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +0 -499
  3015. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c +0 -287
  3016. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +0 -717
  3017. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +0 -1463
  3018. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.c +0 -446
  3019. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.c +0 -322
  3020. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +0 -245
  3021. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +0 -489
  3022. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +0 -288
  3023. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c +0 -304
  3024. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.c +0 -267
  3025. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +0 -1043
  3026. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +0 -557
  3027. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +0 -491
  3028. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c +0 -104
  3029. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +0 -359
  3030. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +0 -1163
  3031. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c +0 -637
  3032. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +0 -749
  3033. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +0 -173
  3034. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +0 -336
  3035. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +0 -269
  3036. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c +0 -255
  3037. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +0 -264
  3038. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +0 -130
  3039. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +0 -372
  3040. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +0 -32
  3041. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.c +0 -112
  3042. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c +0 -256
  3043. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +0 -240
  3044. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/internal.h +0 -37
  3045. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +0 -284
  3046. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +0 -164
  3047. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +0 -200
  3048. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +0 -196
  3049. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +0 -743
  3050. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +0 -302
  3051. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +0 -428
  3052. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +0 -87
  3053. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c +0 -90
  3054. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c +0 -220
  3055. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +0 -197
  3056. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +0 -68
  3057. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/getrandom_fillin.h +0 -64
  3058. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +0 -493
  3059. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +0 -328
  3060. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c +0 -241
  3061. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +0 -423
  3062. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +0 -1038
  3063. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +0 -1351
  3064. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +0 -119
  3065. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +0 -1064
  3066. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +0 -328
  3067. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +0 -439
  3068. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +0 -359
  3069. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +0 -537
  3070. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +0 -218
  3071. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +0 -801
  3072. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +0 -2234
  3073. data/third_party/boringssl-with-bazel/src/crypto/keccak/internal.h +0 -70
  3074. data/third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c +0 -279
  3075. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +0 -844
  3076. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +0 -350
  3077. data/third_party/boringssl-with-bazel/src/crypto/mem.c +0 -609
  3078. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +0 -564
  3079. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.c +0 -122
  3080. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +0 -243
  3081. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +0 -294
  3082. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +0 -790
  3083. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +0 -87
  3084. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +0 -251
  3085. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +0 -183
  3086. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +0 -64
  3087. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +0 -64
  3088. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +0 -193
  3089. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +0 -523
  3090. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +0 -316
  3091. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +0 -527
  3092. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +0 -1352
  3093. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +0 -314
  3094. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +0 -308
  3095. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +0 -847
  3096. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +0 -261
  3097. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +0 -57
  3098. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +0 -44
  3099. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +0 -52
  3100. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +0 -34
  3101. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +0 -158
  3102. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +0 -74
  3103. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +0 -38
  3104. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +0 -95
  3105. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.c +0 -98
  3106. data/third_party/boringssl-with-bazel/src/crypto/refcount.c +0 -59
  3107. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +0 -77
  3108. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +0 -324
  3109. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c +0 -570
  3110. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c +0 -22
  3111. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +0 -79
  3112. data/third_party/boringssl-with-bazel/src/crypto/spx/address.c +0 -101
  3113. data/third_party/boringssl-with-bazel/src/crypto/spx/address.h +0 -50
  3114. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.c +0 -133
  3115. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.h +0 -54
  3116. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.c +0 -150
  3117. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.h +0 -61
  3118. data/third_party/boringssl-with-bazel/src/crypto/spx/params.h +0 -71
  3119. data/third_party/boringssl-with-bazel/src/crypto/spx/spx.c +0 -140
  3120. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c +0 -53
  3121. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.h +0 -44
  3122. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.c +0 -136
  3123. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.h +0 -70
  3124. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.c +0 -135
  3125. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.h +0 -45
  3126. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +0 -534
  3127. data/third_party/boringssl-with-bazel/src/crypto/thread.c +0 -110
  3128. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +0 -51
  3129. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +0 -150
  3130. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +0 -236
  3131. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +0 -1668
  3132. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +0 -687
  3133. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +0 -1267
  3134. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +0 -94
  3135. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +0 -136
  3136. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +0 -116
  3137. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +0 -178
  3138. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +0 -585
  3139. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +0 -400
  3140. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +0 -269
  3141. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +0 -79
  3142. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +0 -227
  3143. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +0 -786
  3144. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +0 -401
  3145. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +0 -145
  3146. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +0 -245
  3147. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +0 -329
  3148. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +0 -121
  3149. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c +0 -221
  3150. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c +0 -73
  3151. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c +0 -634
  3152. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c +0 -135
  3153. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c +0 -141
  3154. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c +0 -416
  3155. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c +0 -482
  3156. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c +0 -598
  3157. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c +0 -112
  3158. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c +0 -154
  3159. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c +0 -270
  3160. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c +0 -122
  3161. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c +0 -211
  3162. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c +0 -121
  3163. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c +0 -344
  3164. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c +0 -555
  3165. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c +0 -81
  3166. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c +0 -142
  3167. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c +0 -150
  3168. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c +0 -224
  3169. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c +0 -624
  3170. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c +0 -170
  3171. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +0 -1357
  3172. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +0 -89
  3173. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +0 -227
  3174. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +0 -280
  3175. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +0 -108
  3176. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +0 -86
  3177. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +0 -181
  3178. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -609
  3179. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +0 -206
  3180. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +0 -299
  3181. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +0 -240
  3182. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +0 -160
  3183. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +0 -189
  3184. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +0 -291
  3185. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +0 -1648
  3186. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +0 -440
  3187. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +0 -277
  3188. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +0 -407
  3189. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +0 -109
  3190. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +0 -133
  3191. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +0 -149
  3192. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +0 -356
  3193. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +0 -97
  3194. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +0 -384
  3195. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +0 -78
  3196. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +0 -527
  3197. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +0 -210
  3198. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +0 -116
  3199. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +0 -93
  3200. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +0 -79
  3201. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +0 -70
  3202. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +0 -544
  3203. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +0 -209
  3204. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.c +0 -1514
  3205. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/spx.h +0 -90
@@ -1,143 +1,18 @@
1
- /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
2
- * All rights reserved.
3
- *
4
- * This package is an SSL implementation written
5
- * by Eric Young (eay@cryptsoft.com).
6
- * The implementation was written so as to conform with Netscapes SSL.
7
- *
8
- * This library is free for commercial and non-commercial use as long as
9
- * the following conditions are aheared to. The following conditions
10
- * apply to all code found in this distribution, be it the RC4, RSA,
11
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
12
- * included with this distribution is covered by the same copyright terms
13
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
14
- *
15
- * Copyright remains Eric Young's, and as such any Copyright notices in
16
- * the code are not to be removed.
17
- * If this package is used in a product, Eric Young should be given attribution
18
- * as the author of the parts of the library used.
19
- * This can be in the form of a textual message at program startup or
20
- * in documentation (online or textual) provided with the package.
21
- *
22
- * Redistribution and use in source and binary forms, with or without
23
- * modification, are permitted provided that the following conditions
24
- * are met:
25
- * 1. Redistributions of source code must retain the copyright
26
- * notice, this list of conditions and the following disclaimer.
27
- * 2. Redistributions in binary form must reproduce the above copyright
28
- * notice, this list of conditions and the following disclaimer in the
29
- * documentation and/or other materials provided with the distribution.
30
- * 3. All advertising materials mentioning features or use of this software
31
- * must display the following acknowledgement:
32
- * "This product includes cryptographic software written by
33
- * Eric Young (eay@cryptsoft.com)"
34
- * The word 'cryptographic' can be left out if the rouines from the library
35
- * being used are not cryptographic related :-).
36
- * 4. If you include any Windows specific code (or a derivative thereof) from
37
- * the apps directory (application code) you must include an acknowledgement:
38
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
39
- *
40
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
41
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
42
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
43
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
44
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
45
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
46
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
47
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
48
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
49
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
50
- * SUCH DAMAGE.
51
- *
52
- * The licence and distribution terms for any publically available version or
53
- * derivative of this code cannot be changed. i.e. this code cannot simply be
54
- * copied and put under another distribution licence
55
- * [including the GNU Public Licence.]
56
- */
57
- /* ====================================================================
58
- * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved.
59
- *
60
- * Redistribution and use in source and binary forms, with or without
61
- * modification, are permitted provided that the following conditions
62
- * are met:
63
- *
64
- * 1. Redistributions of source code must retain the above copyright
65
- * notice, this list of conditions and the following disclaimer.
66
- *
67
- * 2. Redistributions in binary form must reproduce the above copyright
68
- * notice, this list of conditions and the following disclaimer in
69
- * the documentation and/or other materials provided with the
70
- * distribution.
71
- *
72
- * 3. All advertising materials mentioning features or use of this
73
- * software must display the following acknowledgment:
74
- * "This product includes software developed by the OpenSSL Project
75
- * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
76
- *
77
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
78
- * endorse or promote products derived from this software without
79
- * prior written permission. For written permission, please contact
80
- * openssl-core@openssl.org.
81
- *
82
- * 5. Products derived from this software may not be called "OpenSSL"
83
- * nor may "OpenSSL" appear in their names without prior written
84
- * permission of the OpenSSL Project.
85
- *
86
- * 6. Redistributions of any form whatsoever must retain the following
87
- * acknowledgment:
88
- * "This product includes software developed by the OpenSSL Project
89
- * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
90
- *
91
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
92
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
93
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
94
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
95
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
96
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
97
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
98
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
99
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
100
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
101
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
102
- * OF THE POSSIBILITY OF SUCH DAMAGE.
103
- * ====================================================================
104
- *
105
- * This product includes cryptographic software written by Eric Young
106
- * (eay@cryptsoft.com). This product includes software written by Tim
107
- * Hudson (tjh@cryptsoft.com).
108
- *
109
- */
110
- /* ====================================================================
111
- * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
112
- * ECC cipher suite support in OpenSSL originally developed by
113
- * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
114
- */
115
- /* ====================================================================
116
- * Copyright 2005 Nokia. All rights reserved.
117
- *
118
- * The portions of the attached software ("Contribution") is developed by
119
- * Nokia Corporation and is licensed pursuant to the OpenSSL open source
120
- * license.
121
- *
122
- * The Contribution, originally written by Mika Kousa and Pasi Eronen of
123
- * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites
124
- * support (see RFC 4279) to OpenSSL.
125
- *
126
- * No patent licenses or other rights except those expressly stated in
127
- * the OpenSSL open source license shall be deemed granted or received
128
- * expressly, by implication, estoppel, or otherwise.
129
- *
130
- * No assurances are provided by Nokia that the Contribution does not
131
- * infringe the patent or other intellectual property rights of any third
132
- * party or that the license provides you with all the necessary rights
133
- * to make use of the Contribution.
134
- *
135
- * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN
136
- * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA
137
- * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY
138
- * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR
139
- * OTHERWISE.
140
- */
1
+ // Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
2
+ // Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
3
+ // Copyright 2005 Nokia. All rights reserved.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // https://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
141
16
 
142
17
  #ifndef OPENSSL_HEADER_SSL_H
143
18
  #define OPENSSL_HEADER_SSL_H
@@ -242,12 +117,13 @@ OPENSSL_EXPORT int SSL_is_server(const SSL *ssl);
242
117
  // SSL_is_dtls returns one if |ssl| is a DTLS connection and zero otherwise.
243
118
  OPENSSL_EXPORT int SSL_is_dtls(const SSL *ssl);
244
119
 
120
+ // SSL_is_quic returns one if |ssl| is a QUIC connection and zero otherwise.
121
+ OPENSSL_EXPORT int SSL_is_quic(const SSL *ssl);
122
+
245
123
  // SSL_set_bio configures |ssl| to read from |rbio| and write to |wbio|. |ssl|
246
124
  // takes ownership of the two |BIO|s. If |rbio| and |wbio| are the same, |ssl|
247
- // only takes ownership of one reference.
248
- //
249
- // In DTLS, |rbio| must be non-blocking to properly handle timeouts and
250
- // retransmits.
125
+ // only takes ownership of one reference. See |SSL_set0_rbio| and
126
+ // |SSL_set0_wbio| for requirements on |rbio| and |wbio|, respectively.
251
127
  //
252
128
  // If |rbio| is the same as the currently configured |BIO| for reading, that
253
129
  // side is left untouched and is not freed.
@@ -263,14 +139,19 @@ OPENSSL_EXPORT int SSL_is_dtls(const SSL *ssl);
263
139
  OPENSSL_EXPORT void SSL_set_bio(SSL *ssl, BIO *rbio, BIO *wbio);
264
140
 
265
141
  // SSL_set0_rbio configures |ssl| to read from |rbio|. It takes ownership of
266
- // |rbio|.
142
+ // |rbio|. |rbio| may be a custom |BIO|, in which case it must implement
143
+ // |BIO_read| with |BIO_meth_set_read|. In DTLS, |rbio| must be non-blocking to
144
+ // properly handle timeouts and retransmits.
267
145
  //
268
146
  // Note that, although this function and |SSL_set0_wbio| may be called on the
269
147
  // same |BIO|, each call takes a reference. Use |BIO_up_ref| to balance this.
270
148
  OPENSSL_EXPORT void SSL_set0_rbio(SSL *ssl, BIO *rbio);
271
149
 
272
150
  // SSL_set0_wbio configures |ssl| to write to |wbio|. It takes ownership of
273
- // |wbio|.
151
+ // |wbio|. |wbio| may be a custom |BIO|, in which case it must implement
152
+ // |BIO_write| with |BIO_meth_set_write|. It must additionally implement
153
+ // |BIO_flush| with |BIO_meth_set_ctrl| and |BIO_CTRL_FLUSH|. If flushing is
154
+ // unnecessary with |wbio|, |BIO_flush| should return one and do nothing.
274
155
  //
275
156
  // Note that, although this function and |SSL_set0_rbio| may be called on the
276
157
  // same |BIO|, each call takes a reference. Use |BIO_up_ref| to balance this.
@@ -329,11 +210,19 @@ OPENSSL_EXPORT int SSL_set_wfd(SSL *ssl, int fd);
329
210
  // returns <= 0. The caller should pass the value into |SSL_get_error| to
330
211
  // determine how to proceed.
331
212
  //
332
- // In DTLS, the caller must drive retransmissions. Whenever |SSL_get_error|
333
- // signals |SSL_ERROR_WANT_READ|, use |DTLSv1_get_timeout| to determine the
334
- // current timeout. If it expires before the next retry, call
335
- // |DTLSv1_handle_timeout|. Note that DTLS handshake retransmissions use fresh
336
- // sequence numbers, so it is not sufficient to replay packets at the transport.
213
+ // In DTLS, the caller must drive retransmissions and timeouts. After calling
214
+ // this function, the caller must use |DTLSv1_get_timeout| to determine the
215
+ // current timeout, if any. If it expires before the application next calls into
216
+ // |ssl|, call |DTLSv1_handle_timeout|. Note that DTLS handshake retransmissions
217
+ // use fresh sequence numbers, so it is not sufficient to replay packets at the
218
+ // transport.
219
+ //
220
+ // After the DTLS handshake, some retransmissions may remain. If |ssl| wrote
221
+ // last in the handshake, it may need to retransmit the final flight in case of
222
+ // packet loss. Additionally, in DTLS 1.3, it may need to retransmit
223
+ // post-handshake messages. To handle these, the caller must always be prepared
224
+ // to receive packets and process them with |SSL_read|, even when the
225
+ // application protocol would otherwise not read from the connection.
337
226
  //
338
227
  // TODO(davidben): Ensure 0 is only returned on transport EOF.
339
228
  // https://crbug.com/466303.
@@ -352,6 +241,12 @@ OPENSSL_EXPORT int SSL_accept(SSL *ssl);
352
241
  // returns the number of bytes read. Otherwise, it returns <= 0. The caller
353
242
  // should pass the value into |SSL_get_error| to determine how to proceed.
354
243
  //
244
+ // In DTLS 1.3, the caller must also drive timeouts from retransmitting the
245
+ // final flight of the handshake, as well as post-handshake messages. After
246
+ // calling this function, the caller must use |DTLSv1_get_timeout| to determine
247
+ // the current timeout, if any. If it expires before the application next calls
248
+ // into |ssl|, call |DTLSv1_handle_timeout|.
249
+ //
355
250
  // TODO(davidben): Ensure 0 is only returned on transport EOF.
356
251
  // https://crbug.com/466303.
357
252
  OPENSSL_EXPORT int SSL_read(SSL *ssl, void *buf, int num);
@@ -478,16 +373,12 @@ OPENSSL_EXPORT int SSL_get_error(const SSL *ssl, int ret_code);
478
373
  #define SSL_ERROR_NONE 0
479
374
 
480
375
  // SSL_ERROR_SSL indicates the operation failed within the library. The caller
481
- // may inspect the error queue for more information.
376
+ // may inspect the error queue (see |ERR_get_error|) for more information.
482
377
  #define SSL_ERROR_SSL 1
483
378
 
484
379
  // SSL_ERROR_WANT_READ indicates the operation failed attempting to read from
485
380
  // the transport. The caller may retry the operation when the transport is ready
486
381
  // for reading.
487
- //
488
- // If signaled by a DTLS handshake, the caller must also call
489
- // |DTLSv1_get_timeout| and |DTLSv1_handle_timeout| as appropriate. See
490
- // |SSL_do_handshake|.
491
382
  #define SSL_ERROR_WANT_READ 2
492
383
 
493
384
  // SSL_ERROR_WANT_WRITE indicates the operation failed attempting to write to
@@ -600,28 +491,29 @@ OPENSSL_EXPORT int SSL_set_mtu(SSL *ssl, unsigned mtu);
600
491
  // DTLSv1_set_initial_timeout_duration sets the initial duration for a DTLS
601
492
  // handshake timeout.
602
493
  //
603
- // This duration overrides the default of 1 second, which is the strong
604
- // recommendation of RFC 6347 (see section 4.2.4.1). However, there may exist
605
- // situations where a shorter timeout would be beneficial, such as for
606
- // time-sensitive applications.
494
+ // This duration overrides the default of 400 milliseconds, which is
495
+ // recommendation of RFC 9147 for real-time protocols.
607
496
  OPENSSL_EXPORT void DTLSv1_set_initial_timeout_duration(SSL *ssl,
608
- unsigned duration_ms);
497
+ uint32_t duration_ms);
609
498
 
610
- // DTLSv1_get_timeout queries the next DTLS handshake timeout. If there is a
611
- // timeout in progress, it sets |*out| to the time remaining and returns one.
612
- // Otherwise, it returns zero.
499
+ // DTLSv1_get_timeout queries the running DTLS timers. If there are any in
500
+ // progress, it sets |*out| to the time remaining until the first timer expires
501
+ // and returns one. Otherwise, it returns zero. Timers may be scheduled both
502
+ // during and after the handshake.
613
503
  //
614
504
  // When the timeout expires, call |DTLSv1_handle_timeout| to handle the
615
505
  // retransmit behavior.
616
506
  //
617
- // NOTE: This function must be queried again whenever the handshake state
618
- // machine changes, including when |DTLSv1_handle_timeout| is called.
507
+ // NOTE: This function must be queried again whenever the state machine changes,
508
+ // including when |DTLSv1_handle_timeout| is called.
619
509
  OPENSSL_EXPORT int DTLSv1_get_timeout(const SSL *ssl, struct timeval *out);
620
510
 
621
- // DTLSv1_handle_timeout is called when a DTLS handshake timeout expires. If no
622
- // timeout had expired, it returns 0. Otherwise, it retransmits the previous
623
- // flight of handshake messages and returns 1. If too many timeouts had expired
624
- // without progress or an error occurs, it returns -1.
511
+ // DTLSv1_handle_timeout is called when a DTLS timeout expires. If no timeout
512
+ // had expired, it returns 0. Otherwise, it handles the timeout and returns 1 on
513
+ // success or -1 on error.
514
+ //
515
+ // This function may write to the transport (e.g. to retransmit messages) or
516
+ // update |ssl|'s internal state and schedule an updated timer.
625
517
  //
626
518
  // The caller's external timer should be compatible with the one |ssl| queries
627
519
  // within some fudge factor. Otherwise, the call will be a no-op, but
@@ -629,12 +521,16 @@ OPENSSL_EXPORT int DTLSv1_get_timeout(const SSL *ssl, struct timeval *out);
629
521
  //
630
522
  // If the function returns -1, checking if |SSL_get_error| returns
631
523
  // |SSL_ERROR_WANT_WRITE| may be used to determine if the retransmit failed due
632
- // to a non-fatal error at the write |BIO|. However, the operation may not be
633
- // retried until the next timeout fires.
524
+ // to a non-fatal error at the write |BIO|. In this case, when the |BIO| is
525
+ // writable, the operation may be retried by calling the original function,
526
+ // |SSL_do_handshake| or |SSL_read|.
634
527
  //
635
528
  // WARNING: This function breaks the usual return value convention.
636
529
  //
637
- // TODO(davidben): This |SSL_ERROR_WANT_WRITE| behavior is kind of bizarre.
530
+ // TODO(davidben): We can make this function entirely optional by just checking
531
+ // the timers in |SSL_do_handshake| or |SSL_read|. Then timers behave like any
532
+ // other retry condition: rerun the operation and the library will make what
533
+ // progress it can.
638
534
  OPENSSL_EXPORT int DTLSv1_handle_timeout(SSL *ssl);
639
535
 
640
536
 
@@ -651,6 +547,7 @@ OPENSSL_EXPORT int DTLSv1_handle_timeout(SSL *ssl);
651
547
 
652
548
  #define DTLS1_VERSION 0xfeff
653
549
  #define DTLS1_2_VERSION 0xfefd
550
+ #define DTLS1_3_VERSION 0xfefc
654
551
 
655
552
  // SSL_CTX_set_min_proto_version sets the minimum protocol version for |ctx| to
656
553
  // |version|. If |version| is zero, the default minimum version is used. It
@@ -853,8 +750,9 @@ OPENSSL_EXPORT void SSL_CTX_set0_buffer_pool(SSL_CTX *ctx,
853
750
  // |SSL_CTX| and |SSL| objects maintain lists of credentials in preference
854
751
  // order. During the handshake, BoringSSL will select the first usable
855
752
  // credential from the list. Non-credential APIs, such as
856
- // |SSL_CTX_use_certificate|, configure a "default credential", which is
857
- // appended to this list if configured.
753
+ // |SSL_CTX_use_certificate|, configure a "legacy credential", which is
754
+ // appended to this list if configured. Using the legacy credential is the same
755
+ // as configuring an equivalent credential with the |SSL_CREDENTIAL| API.
858
756
  //
859
757
  // When selecting credentials, BoringSSL considers the credential's type, its
860
758
  // cryptographic capabilities, and capabilities advertised by the peer. This
@@ -958,7 +856,7 @@ OPENSSL_EXPORT int SSL_CTX_add1_credential(SSL_CTX *ctx, SSL_CREDENTIAL *cred);
958
856
  OPENSSL_EXPORT int SSL_add1_credential(SSL *ssl, SSL_CREDENTIAL *cred);
959
857
 
960
858
  // SSL_certs_clear removes all credentials configured on |ssl|. It also removes
961
- // the certificate chain and private key on the default credential.
859
+ // the certificate chain and private key on the legacy credential.
962
860
  OPENSSL_EXPORT void SSL_certs_clear(SSL *ssl);
963
861
 
964
862
  // SSL_get0_selected_credential returns the credential in use in the current
@@ -989,8 +887,9 @@ OPENSSL_EXPORT const SSL_CREDENTIAL *SSL_get0_selected_credential(
989
887
  // than return an error. Additionally, overwriting a previously-configured
990
888
  // certificate and key pair only works if the certificate is configured first.
991
889
  //
992
- // Each of these functions configures the default credential. To select between
993
- // multiple certificates, see |SSL_CREDENTIAL_new_x509| and related APIs.
890
+ // Each of these functions configures the single "legacy credential" on the
891
+ // |SSL_CTX| or |SSL|. To select between multiple certificates, use
892
+ // |SSL_CREDENTIAL_new_x509| and other APIs to configure a list of credentials.
994
893
 
995
894
  // SSL_CTX_use_certificate sets |ctx|'s leaf certificate to |x509|. It returns
996
895
  // one on success and zero on failure. If |ctx| has a private key which is
@@ -1127,9 +1026,8 @@ SSL_get0_peer_verify_algorithms(const SSL *ssl, const uint16_t **out_sigalgs);
1127
1026
  // The behavior of this function is undefined except during the callbacks set by
1128
1027
  // by |SSL_CTX_set_cert_cb| and |SSL_CTX_set_client_cert_cb| or when the
1129
1028
  // handshake is paused because of them.
1130
- OPENSSL_EXPORT size_t
1131
- SSL_get0_peer_delegation_algorithms(const SSL *ssl,
1132
- const uint16_t **out_sigalgs);
1029
+ OPENSSL_EXPORT size_t SSL_get0_peer_delegation_algorithms(
1030
+ const SSL *ssl, const uint16_t **out_sigalgs);
1133
1031
 
1134
1032
  // SSL_CTX_get0_certificate returns |ctx|'s leaf certificate.
1135
1033
  OPENSSL_EXPORT X509 *SSL_CTX_get0_certificate(const SSL_CTX *ctx);
@@ -1187,8 +1085,7 @@ OPENSSL_EXPORT int SSL_CTX_set_ocsp_response(SSL_CTX *ctx,
1187
1085
  // SSL_set_ocsp_response sets the OCSP response that is sent to clients which
1188
1086
  // request it. It returns one on success and zero on error. The caller retains
1189
1087
  // ownership of |response|.
1190
- OPENSSL_EXPORT int SSL_set_ocsp_response(SSL *ssl,
1191
- const uint8_t *response,
1088
+ OPENSSL_EXPORT int SSL_set_ocsp_response(SSL *ssl, const uint8_t *response,
1192
1089
  size_t response_len);
1193
1090
 
1194
1091
  // SSL_SIGN_* are signature algorithm values as defined in TLS 1.3.
@@ -1205,6 +1102,11 @@ OPENSSL_EXPORT int SSL_set_ocsp_response(SSL *ssl,
1205
1102
  #define SSL_SIGN_RSA_PSS_RSAE_SHA512 0x0806
1206
1103
  #define SSL_SIGN_ED25519 0x0807
1207
1104
 
1105
+ // SSL_SIGN_RSA_PKCS1_SHA256_LEGACY is a backport of RSASSA-PKCS1-v1_5 with
1106
+ // SHA-256 to TLS 1.3. It is disabled by default and only defined for client
1107
+ // certificates.
1108
+ #define SSL_SIGN_RSA_PKCS1_SHA256_LEGACY 0x0420
1109
+
1208
1110
  // SSL_SIGN_RSA_PKCS1_MD5_SHA1 is an internal signature algorithm used to
1209
1111
  // specify raw RSASSA-PKCS1-v1_5 with an MD5/SHA-1 concatenation, as used in TLS
1210
1112
  // before TLS 1.2.
@@ -1245,17 +1147,29 @@ OPENSSL_EXPORT const EVP_MD *SSL_get_signature_algorithm_digest(
1245
1147
  OPENSSL_EXPORT int SSL_is_signature_algorithm_rsa_pss(uint16_t sigalg);
1246
1148
 
1247
1149
  // SSL_CTX_set_signing_algorithm_prefs configures |ctx| to use |prefs| as the
1248
- // preference list when signing with |ctx|'s private key. It returns one on
1249
- // success and zero on error. |prefs| should not include the internal-only value
1250
- // |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
1150
+ // preference list when signing with |ctx|'s private key in TLS 1.2 and up. It
1151
+ // returns one on success and zero on error. |prefs| should not include the
1152
+ // internal-only TLS 1.0 value |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
1153
+ //
1154
+ // This setting is not used in TLS 1.0 and 1.1. Those protocols always sign a
1155
+ // hardcoded algorithm (an MD5/SHA-1 concatenation for RSA, and SHA-1 for
1156
+ // ECDSA). BoringSSL will use those algorithms if and only if those versions are
1157
+ // used. To disable them, set the minimum version to TLS 1.2 (default) or
1158
+ // higher.
1251
1159
  OPENSSL_EXPORT int SSL_CTX_set_signing_algorithm_prefs(SSL_CTX *ctx,
1252
1160
  const uint16_t *prefs,
1253
1161
  size_t num_prefs);
1254
1162
 
1255
1163
  // SSL_set_signing_algorithm_prefs configures |ssl| to use |prefs| as the
1256
- // preference list when signing with |ssl|'s private key. It returns one on
1257
- // success and zero on error. |prefs| should not include the internal-only value
1258
- // |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
1164
+ // preference list when signing with |ssl|'s private key in TLS 1.2 and up. It
1165
+ // returns one on success and zero on error. |prefs| should not include the
1166
+ // internal-only TLS 1.0 value |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
1167
+ //
1168
+ // This setting is not used in TLS 1.0 and 1.1. Those protocols always sign a
1169
+ // hardcoded algorithm (an MD5/SHA-1 concatenation for RSA, and SHA-1 for
1170
+ // ECDSA). BoringSSL will use those algorithms if and only if those versions are
1171
+ // used. To disable them, set the minimum version to TLS 1.2 (default) or
1172
+ // higher.
1259
1173
  OPENSSL_EXPORT int SSL_set_signing_algorithm_prefs(SSL *ssl,
1260
1174
  const uint16_t *prefs,
1261
1175
  size_t num_prefs);
@@ -1343,8 +1257,7 @@ OPENSSL_EXPORT int SSL_use_RSAPrivateKey_ASN1(SSL *ssl, const uint8_t *der,
1343
1257
  #define SSL_FILETYPE_ASN1 2
1344
1258
 
1345
1259
  OPENSSL_EXPORT int SSL_CTX_use_RSAPrivateKey_file(SSL_CTX *ctx,
1346
- const char *file,
1347
- int type);
1260
+ const char *file, int type);
1348
1261
  OPENSSL_EXPORT int SSL_use_RSAPrivateKey_file(SSL *ssl, const char *file,
1349
1262
  int type);
1350
1263
 
@@ -1487,6 +1400,24 @@ OPENSSL_EXPORT void SSL_CTX_set_private_key_method(
1487
1400
  OPENSSL_EXPORT int SSL_CREDENTIAL_set_private_key_method(
1488
1401
  SSL_CREDENTIAL *cred, const SSL_PRIVATE_KEY_METHOD *key_method);
1489
1402
 
1403
+ // SSL_CREDENTIAL_set_must_match_issuer sets the flag that this credential
1404
+ // should be considered only when it matches a peer request for a particular
1405
+ // issuer via a negotiation mechanism (such as the certificate_authorities
1406
+ // extension).
1407
+ OPENSSL_EXPORT void SSL_CREDENTIAL_set_must_match_issuer(SSL_CREDENTIAL *cred);
1408
+
1409
+ // SSL_CREDENTIAL_clear_must_match_issuer clears the flag requiring issuer
1410
+ // matching, indicating this credential should be considered regardless of peer
1411
+ // issuer matching requests. (This is the default).
1412
+ OPENSSL_EXPORT void SSL_CREDENTIAL_clear_must_match_issuer(
1413
+ SSL_CREDENTIAL *cred);
1414
+
1415
+ // SSL_CREDENTIAL_must_match_issuer returns the value of the flag indicating
1416
+ // that this credential should be considered only when it matches a peer request
1417
+ // for a particular issuer via a negotiation mechanism (such as the
1418
+ // certificate_authorities extension).
1419
+ OPENSSL_EXPORT int SSL_CREDENTIAL_must_match_issuer(const SSL_CREDENTIAL *cred);
1420
+
1490
1421
  // SSL_can_release_private_key returns one if |ssl| will no longer call into the
1491
1422
  // private key and zero otherwise. If the function returns one, the caller can
1492
1423
  // release state associated with the private key.
@@ -1806,8 +1737,8 @@ OPENSSL_EXPORT STACK_OF(X509) *SSL_get_peer_full_cert_chain(const SSL *ssl);
1806
1737
  // verification. The caller does not take ownership of the result.
1807
1738
  //
1808
1739
  // This is the |CRYPTO_BUFFER| variant of |SSL_get_peer_full_cert_chain|.
1809
- OPENSSL_EXPORT const STACK_OF(CRYPTO_BUFFER) *
1810
- SSL_get0_peer_certificates(const SSL *ssl);
1740
+ OPENSSL_EXPORT const STACK_OF(CRYPTO_BUFFER) *SSL_get0_peer_certificates(
1741
+ const SSL *ssl);
1811
1742
 
1812
1743
  // SSL_get0_signed_cert_timestamp_list sets |*out| and |*out_len| to point to
1813
1744
  // |*out_len| bytes of SCT information from the server. This is only valid if
@@ -1868,10 +1799,11 @@ OPENSSL_EXPORT int SSL_session_reused(const SSL *ssl);
1868
1799
  // renegotiation (RFC 5746) or TLS 1.3. Otherwise, it returns zero.
1869
1800
  OPENSSL_EXPORT int SSL_get_secure_renegotiation_support(const SSL *ssl);
1870
1801
 
1871
- // SSL_export_keying_material exports a value derived from the master secret, as
1872
- // specified in RFC 5705. It writes |out_len| bytes to |out| given a label and
1873
- // optional context. (Since a zero length context is allowed, the |use_context|
1874
- // flag controls whether a context is included.)
1802
+ // SSL_export_keying_material exports a connection-specific secret from |ssl|,
1803
+ // as specified in RFC 5705. It writes |out_len| bytes to |out| given a label
1804
+ // and optional context. If |use_context| is zero, the |context| parameter is
1805
+ // ignored. Prior to TLS 1.3, using a zero-length context and using no context
1806
+ // would give different output.
1875
1807
  //
1876
1808
  // It returns one on success and zero otherwise.
1877
1809
  OPENSSL_EXPORT int SSL_export_keying_material(
@@ -1921,8 +1853,9 @@ OPENSSL_EXPORT int SSL_SESSION_to_bytes_for_ticket(const SSL_SESSION *in,
1921
1853
 
1922
1854
  // SSL_SESSION_from_bytes parses |in_len| bytes from |in| as an SSL_SESSION. It
1923
1855
  // returns a newly-allocated |SSL_SESSION| on success or NULL on error.
1924
- OPENSSL_EXPORT SSL_SESSION *SSL_SESSION_from_bytes(
1925
- const uint8_t *in, size_t in_len, const SSL_CTX *ctx);
1856
+ OPENSSL_EXPORT SSL_SESSION *SSL_SESSION_from_bytes(const uint8_t *in,
1857
+ size_t in_len,
1858
+ const SSL_CTX *ctx);
1926
1859
 
1927
1860
  // SSL_SESSION_get_version returns a string describing the TLS or DTLS version
1928
1861
  // |session| was established at. For example, "TLSv1.2" or "DTLSv1".
@@ -1984,7 +1917,7 @@ OPENSSL_EXPORT X509 *SSL_SESSION_get0_peer(const SSL_SESSION *session);
1984
1917
  // unverified list of certificates as sent by the peer, not the final chain
1985
1918
  // built during verification. The caller does not take ownership of the result.
1986
1919
  OPENSSL_EXPORT const STACK_OF(CRYPTO_BUFFER) *
1987
- SSL_SESSION_get0_peer_certificates(const SSL_SESSION *session);
1920
+ SSL_SESSION_get0_peer_certificates(const SSL_SESSION *session);
1988
1921
 
1989
1922
  // SSL_SESSION_get0_signed_cert_timestamp_list sets |*out| and |*out_len| to
1990
1923
  // point to |*out_len| bytes of SCT information stored in |session|. This is
@@ -2172,7 +2105,7 @@ OPENSSL_EXPORT void SSL_SESSION_get0_peer_sha256(const SSL_SESSION *session,
2172
2105
  // SSL_SESS_CACHE_NO_INTERNAL, on a server, disables the internal session
2173
2106
  // cache.
2174
2107
  #define SSL_SESS_CACHE_NO_INTERNAL \
2175
- (SSL_SESS_CACHE_NO_INTERNAL_LOOKUP | SSL_SESS_CACHE_NO_INTERNAL_STORE)
2108
+ (SSL_SESS_CACHE_NO_INTERNAL_LOOKUP | SSL_SESS_CACHE_NO_INTERNAL_STORE)
2176
2109
 
2177
2110
  // SSL_CTX_set_session_cache_mode sets the session cache mode bits for |ctx| to
2178
2111
  // |mode|. It returns the previous value.
@@ -2417,21 +2350,22 @@ OPENSSL_EXPORT int SSL_CTX_set_tlsext_ticket_keys(SSL_CTX *ctx, const void *in,
2417
2350
  // When encrypting a new ticket, |encrypt| will be one. It writes a public
2418
2351
  // 16-byte key name to |key_name| and a fresh IV to |iv|. The output IV length
2419
2352
  // must match |EVP_CIPHER_CTX_iv_length| of the cipher selected. In this mode,
2420
- // |callback| returns 1 on success and -1 on error.
2353
+ // |callback| returns 1 on success, 0 to decline sending a ticket, and -1 on
2354
+ // error.
2421
2355
  //
2422
2356
  // When decrypting a ticket, |encrypt| will be zero. |key_name| will point to a
2423
2357
  // 16-byte key name and |iv| points to an IV. The length of the IV consumed must
2424
2358
  // match |EVP_CIPHER_CTX_iv_length| of the cipher selected. In this mode,
2425
- // |callback| returns -1 to abort the handshake, 0 if decrypting the ticket
2426
- // failed, and 1 or 2 on success. If it returns 2, the ticket will be renewed.
2427
- // This may be used to re-key the ticket.
2359
+ // |callback| returns -1 to abort the handshake, 0 if the ticket key was
2360
+ // unrecognized, and 1 or 2 on success. If it returns 2, the ticket will be
2361
+ // renewed. This may be used to re-key the ticket.
2428
2362
  //
2429
2363
  // WARNING: |callback| wildly breaks the usual return value convention and is
2430
2364
  // called in two different modes.
2431
2365
  OPENSSL_EXPORT int SSL_CTX_set_tlsext_ticket_key_cb(
2432
- SSL_CTX *ctx, int (*callback)(SSL *ssl, uint8_t *key_name, uint8_t *iv,
2433
- EVP_CIPHER_CTX *ctx, HMAC_CTX *hmac_ctx,
2434
- int encrypt));
2366
+ SSL_CTX *ctx,
2367
+ int (*callback)(SSL *ssl, uint8_t *key_name, uint8_t *iv,
2368
+ EVP_CIPHER_CTX *ctx, HMAC_CTX *hmac_ctx, int encrypt));
2435
2369
 
2436
2370
  // ssl_ticket_aead_result_t enumerates the possible results from decrypting a
2437
2371
  // ticket with an |SSL_TICKET_AEAD_METHOD|.
@@ -2461,7 +2395,8 @@ struct ssl_ticket_aead_method_st {
2461
2395
  // seal encrypts and authenticates |in_len| bytes from |in|, writes, at most,
2462
2396
  // |max_out_len| bytes to |out|, and puts the number of bytes written in
2463
2397
  // |*out_len|. The |in| and |out| buffers may be equal but will not otherwise
2464
- // alias. It returns one on success or zero on error.
2398
+ // alias. It returns one on success or zero on error. If the function returns
2399
+ // but |*out_len| is zero, BoringSSL will skip sending a ticket.
2465
2400
  int (*seal)(SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out_len,
2466
2401
  const uint8_t *in, size_t in_len);
2467
2402
 
@@ -2532,6 +2467,7 @@ OPENSSL_EXPORT size_t SSL_CTX_get_num_tickets(const SSL_CTX *ctx);
2532
2467
  #define SSL_GROUP_SECP384R1 24
2533
2468
  #define SSL_GROUP_SECP521R1 25
2534
2469
  #define SSL_GROUP_X25519 29
2470
+ #define SSL_GROUP_X25519_MLKEM768 0x11ec
2535
2471
  #define SSL_GROUP_X25519_KYBER768_DRAFT00 0x6399
2536
2472
 
2537
2473
  // SSL_CTX_set1_group_ids sets the preferred groups for |ctx| to |group_ids|.
@@ -2793,8 +2729,7 @@ OPENSSL_EXPORT int SSL_CTX_set1_param(SSL_CTX *ctx,
2793
2729
 
2794
2730
  // SSL_set1_param sets verification parameters from |param|. It returns one on
2795
2731
  // success and zero on failure. The caller retains ownership of |param|.
2796
- OPENSSL_EXPORT int SSL_set1_param(SSL *ssl,
2797
- const X509_VERIFY_PARAM *param);
2732
+ OPENSSL_EXPORT int SSL_set1_param(SSL *ssl, const X509_VERIFY_PARAM *param);
2798
2733
 
2799
2734
  // SSL_CTX_get0_param returns |ctx|'s |X509_VERIFY_PARAM| for certificate
2800
2735
  // verification. The caller must not release the returned pointer but may call
@@ -2924,17 +2859,29 @@ OPENSSL_EXPORT int SSL_set0_verify_cert_store(SSL *ssl, X509_STORE *store);
2924
2859
  OPENSSL_EXPORT int SSL_set1_verify_cert_store(SSL *ssl, X509_STORE *store);
2925
2860
 
2926
2861
  // SSL_CTX_set_verify_algorithm_prefs configures |ctx| to use |prefs| as the
2927
- // preference list when verifying signatures from the peer's long-term key. It
2928
- // returns one on zero on error. |prefs| should not include the internal-only
2929
- // value |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
2862
+ // preference list when verifying signatures from the peer's long-term key in
2863
+ // TLS 1.2 and up. It returns one on zero on error. |prefs| should not include
2864
+ // the internal-only TLS 1.0 value |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
2865
+ //
2866
+ // This setting is not used in TLS 1.0 and 1.1. Those protocols always sign a
2867
+ // hardcoded algorithm (an MD5/SHA-1 concatenation for RSA, and SHA-1 for
2868
+ // ECDSA). BoringSSL will accept those algorithms if and only if those versions
2869
+ // are used. To disable them, set the minimum version to TLS 1.2 (default) or
2870
+ // higher.
2930
2871
  OPENSSL_EXPORT int SSL_CTX_set_verify_algorithm_prefs(SSL_CTX *ctx,
2931
2872
  const uint16_t *prefs,
2932
2873
  size_t num_prefs);
2933
2874
 
2934
2875
  // SSL_set_verify_algorithm_prefs configures |ssl| to use |prefs| as the
2935
- // preference list when verifying signatures from the peer's long-term key. It
2936
- // returns one on zero on error. |prefs| should not include the internal-only
2937
- // value |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
2876
+ // preference list when verifying signatures from the peer's long-term key in
2877
+ // TLS 1.2 and up. It returns one on zero on error. |prefs| should not include
2878
+ // the internal-only TLS 1.0 value |SSL_SIGN_RSA_PKCS1_MD5_SHA1|.
2879
+ //
2880
+ // This setting is not used in TLS 1.0 and 1.1. Those protocols always sign a
2881
+ // hardcoded algorithm (an MD5/SHA-1 concatenation for RSA, and SHA-1 for
2882
+ // ECDSA). BoringSSL will accept those algorithms if and only if those versions
2883
+ // are used. To disable them, set the minimum version to TLS 1.2 (default) or
2884
+ // higher.
2938
2885
  OPENSSL_EXPORT int SSL_set_verify_algorithm_prefs(SSL *ssl,
2939
2886
  const uint16_t *prefs,
2940
2887
  size_t num_prefs);
@@ -2962,6 +2909,12 @@ OPENSSL_EXPORT void SSL_CTX_set_client_CA_list(SSL_CTX *ctx,
2962
2909
  OPENSSL_EXPORT void SSL_set0_client_CAs(SSL *ssl,
2963
2910
  STACK_OF(CRYPTO_BUFFER) *name_list);
2964
2911
 
2912
+ // SSL_set0_CA_names sets |ssl|'s CA name list for the certificate authorities
2913
+ // extension to |name_list|, which should contain DER-encoded distinguished
2914
+ // names (RFC 5280). It takes ownership of |name_list|.
2915
+ OPENSSL_EXPORT void SSL_set0_CA_names(SSL *ssl,
2916
+ STACK_OF(CRYPTO_BUFFER) *name_list);
2917
+
2965
2918
  // SSL_CTX_set0_client_CAs sets |ctx|'s client certificate CA list to
2966
2919
  // |name_list|, which should contain DER-encoded distinguished names (RFC 5280).
2967
2920
  // It takes ownership of |name_list|.
@@ -2985,12 +2938,12 @@ OPENSSL_EXPORT STACK_OF(X509_NAME) *SSL_get_client_CA_list(const SSL *ssl);
2985
2938
  //
2986
2939
  // The returned stack is owned by |ssl|, as are its contents. It should not be
2987
2940
  // used past the point where the handshake is restarted after the callback.
2988
- OPENSSL_EXPORT const STACK_OF(CRYPTO_BUFFER) *
2989
- SSL_get0_server_requested_CAs(const SSL *ssl);
2941
+ OPENSSL_EXPORT const STACK_OF(CRYPTO_BUFFER) *SSL_get0_server_requested_CAs(
2942
+ const SSL *ssl);
2990
2943
 
2991
2944
  // SSL_CTX_get_client_CA_list returns |ctx|'s client certificate CA list.
2992
- OPENSSL_EXPORT STACK_OF(X509_NAME) *
2993
- SSL_CTX_get_client_CA_list(const SSL_CTX *ctx);
2945
+ OPENSSL_EXPORT STACK_OF(X509_NAME) *SSL_CTX_get_client_CA_list(
2946
+ const SSL_CTX *ctx);
2994
2947
 
2995
2948
  // SSL_add_client_CA appends |x509|'s subject to the client certificate CA list.
2996
2949
  // It returns one on success or zero on error. The caller retains ownership of
@@ -3115,7 +3068,8 @@ OPENSSL_EXPORT int SSL_set_alpn_protos(SSL *ssl, const uint8_t *protos,
3115
3068
 
3116
3069
  // SSL_CTX_set_alpn_select_cb sets a callback function on |ctx| that is called
3117
3070
  // during ClientHello processing in order to select an ALPN protocol from the
3118
- // client's list of offered protocols.
3071
+ // client's list of offered protocols. |SSL_select_next_proto| is an optional
3072
+ // utility function which may be useful in implementing this callback.
3119
3073
  //
3120
3074
  // The callback is passed a wire-format (i.e. a series of non-empty, 8-bit
3121
3075
  // length-prefixed strings) ALPN protocol list in |in|. To select a protocol,
@@ -3144,8 +3098,9 @@ OPENSSL_EXPORT int SSL_set_alpn_protos(SSL *ssl, const uint8_t *protos,
3144
3098
  // |SSL_get_pending_cipher| to query the cipher suite. This may be used to
3145
3099
  // implement HTTP/2's cipher suite constraints.
3146
3100
  OPENSSL_EXPORT void SSL_CTX_set_alpn_select_cb(
3147
- SSL_CTX *ctx, int (*cb)(SSL *ssl, const uint8_t **out, uint8_t *out_len,
3148
- const uint8_t *in, unsigned in_len, void *arg),
3101
+ SSL_CTX *ctx,
3102
+ int (*cb)(SSL *ssl, const uint8_t **out, uint8_t *out_len,
3103
+ const uint8_t *in, unsigned in_len, void *arg),
3149
3104
  void *arg);
3150
3105
 
3151
3106
  // SSL_get0_alpn_selected gets the selected ALPN protocol (if any) from |ssl|.
@@ -3265,38 +3220,59 @@ OPENSSL_EXPORT int SSL_CTX_add_cert_compression_alg(
3265
3220
  // and deprecated in favor of it.
3266
3221
 
3267
3222
  // SSL_CTX_set_next_protos_advertised_cb sets a callback that is called when a
3268
- // TLS server needs a list of supported protocols for Next Protocol
3269
- // Negotiation. The returned list must be in wire format. The list is returned
3270
- // by setting |*out| to point to it and |*out_len| to its length. This memory
3271
- // will not be modified, but one should assume that |ssl| keeps a reference to
3272
- // it.
3273
- //
3274
- // The callback should return |SSL_TLSEXT_ERR_OK| if it wishes to advertise.
3275
- // Otherwise, no such extension will be included in the ServerHello.
3223
+ // TLS server needs a list of supported protocols for Next Protocol Negotiation.
3224
+ //
3225
+ // If the callback wishes to advertise NPN to the client, it should return
3226
+ // |SSL_TLSEXT_ERR_OK| and then set |*out| and |*out_len| to describe to a
3227
+ // buffer containing a (possibly empty) list of supported protocols in wire
3228
+ // format. That is, each protocol is prefixed with a 1-byte length, then
3229
+ // concatenated. From there, the client will select a protocol, possibly one not
3230
+ // on the server's list. The caller can use |SSL_get0_next_proto_negotiated|
3231
+ // after the handshake completes to query the final protocol.
3232
+ //
3233
+ // The returned buffer must remain valid and unmodified for at least the
3234
+ // duration of the |SSL| operation (e.g. |SSL_do_handshake|) that triggered the
3235
+ // callback.
3236
+ //
3237
+ // If the caller wishes not to advertise NPN, it should return
3238
+ // |SSL_TLSEXT_ERR_NOACK|. No NPN extension will be included in the ServerHello,
3239
+ // and the TLS server will behave as if it does not implement NPN.
3276
3240
  OPENSSL_EXPORT void SSL_CTX_set_next_protos_advertised_cb(
3277
3241
  SSL_CTX *ctx,
3278
3242
  int (*cb)(SSL *ssl, const uint8_t **out, unsigned *out_len, void *arg),
3279
3243
  void *arg);
3280
3244
 
3281
3245
  // SSL_CTX_set_next_proto_select_cb sets a callback that is called when a client
3282
- // needs to select a protocol from the server's provided list. |*out| must be
3283
- // set to point to the selected protocol (which may be within |in|). The length
3284
- // of the protocol name must be written into |*out_len|. The server's advertised
3285
- // protocols are provided in |in| and |in_len|. The callback can assume that
3286
- // |in| is syntactically valid.
3287
- //
3288
- // The client must select a protocol. It is fatal to the connection if this
3289
- // callback returns a value other than |SSL_TLSEXT_ERR_OK|.
3290
- //
3291
- // Configuring this callback enables NPN on a client.
3246
+ // needs to select a protocol from the server's provided list, passed in wire
3247
+ // format in |in_len| bytes from |in|. The callback can assume that |in| is
3248
+ // syntactically valid. |SSL_select_next_proto| is an optional utility function
3249
+ // which may be useful in implementing this callback.
3250
+ //
3251
+ // On success, the callback should return |SSL_TLSEXT_ERR_OK| and set |*out| and
3252
+ // |*out_len| to describe a buffer containing the selected protocol, or an
3253
+ // empty buffer to select no protocol. The returned buffer may point within
3254
+ // |in|, or it may point to some other buffer that remains valid and unmodified
3255
+ // for at least the duration of the |SSL| operation (e.g. |SSL_do_handshake|)
3256
+ // that triggered the callback.
3257
+ //
3258
+ // Returning any other value indicates a fatal error and will terminate the TLS
3259
+ // connection. To proceed without selecting a protocol, the callback must return
3260
+ // |SSL_TLSEXT_ERR_OK| and set |*out| and |*out_len| to an empty buffer. (E.g.
3261
+ // NULL and zero, respectively.)
3262
+ //
3263
+ // Configuring this callback enables NPN on a client. Although the callback can
3264
+ // then decline to negotiate a protocol, merely configuring the callback causes
3265
+ // the client to offer NPN in the ClientHello. Callers thus should not configure
3266
+ // this callback in TLS client contexts that are not intended to use NPN.
3292
3267
  OPENSSL_EXPORT void SSL_CTX_set_next_proto_select_cb(
3293
- SSL_CTX *ctx, int (*cb)(SSL *ssl, uint8_t **out, uint8_t *out_len,
3294
- const uint8_t *in, unsigned in_len, void *arg),
3268
+ SSL_CTX *ctx,
3269
+ int (*cb)(SSL *ssl, uint8_t **out, uint8_t *out_len, const uint8_t *in,
3270
+ unsigned in_len, void *arg),
3295
3271
  void *arg);
3296
3272
 
3297
3273
  // SSL_get0_next_proto_negotiated sets |*out_data| and |*out_len| to point to
3298
3274
  // the client's requested protocol for this connection. If the client didn't
3299
- // request any protocol, then |*out_data| is set to NULL.
3275
+ // request any protocol, then |*out_len| is set to zero.
3300
3276
  //
3301
3277
  // Note that the client can request any protocol it chooses. The value returned
3302
3278
  // from this function need not be a member of the list of supported protocols
@@ -3305,21 +3281,45 @@ OPENSSL_EXPORT void SSL_get0_next_proto_negotiated(const SSL *ssl,
3305
3281
  const uint8_t **out_data,
3306
3282
  unsigned *out_len);
3307
3283
 
3308
- // SSL_select_next_proto implements the standard protocol selection. It is
3309
- // expected that this function is called from the callback set by
3284
+ // SSL_select_next_proto implements the standard protocol selection for either
3285
+ // ALPN servers or NPN clients. It is expected that this function is called from
3286
+ // the callback set by |SSL_CTX_set_alpn_select_cb| or
3310
3287
  // |SSL_CTX_set_next_proto_select_cb|.
3311
3288
  //
3312
- // |peer| and |supported| must be vectors of 8-bit, length-prefixed byte strings
3313
- // containing the peer and locally-configured protocols, respectively. The
3314
- // length byte itself is not included in the length. A byte string of length 0
3315
- // is invalid. No byte string may be truncated. |supported| is assumed to be
3316
- // non-empty.
3317
- //
3318
- // This function finds the first protocol in |peer| which is also in
3319
- // |supported|. If one was found, it sets |*out| and |*out_len| to point to it
3320
- // and returns |OPENSSL_NPN_NEGOTIATED|. Otherwise, it returns
3289
+ // |peer| and |supported| contain the peer and locally-configured protocols,
3290
+ // respectively. This function finds the first protocol in |peer| which is also
3291
+ // in |supported|. If one was found, it sets |*out| and |*out_len| to point to
3292
+ // it and returns |OPENSSL_NPN_NEGOTIATED|. Otherwise, it returns
3321
3293
  // |OPENSSL_NPN_NO_OVERLAP| and sets |*out| and |*out_len| to the first
3322
3294
  // supported protocol.
3295
+ //
3296
+ // In ALPN, the server should only select protocols among those that the client
3297
+ // offered. Thus, if this function returns |OPENSSL_NPN_NO_OVERLAP|, the caller
3298
+ // should ignore |*out| and return |SSL_TLSEXT_ERR_ALERT_FATAL| from
3299
+ // |SSL_CTX_set_alpn_select_cb|'s callback to indicate there was no match.
3300
+ //
3301
+ // In NPN, the client may either select one of the server's protocols, or an
3302
+ // "opportunistic" protocol as described in Section 6 of
3303
+ // draft-agl-tls-nextprotoneg-03. When this function returns
3304
+ // |OPENSSL_NPN_NO_OVERLAP|, |*out| implicitly selects the first supported
3305
+ // protocol for use as the opportunistic protocol. The caller may use it,
3306
+ // ignore it and select a different opportunistic protocol, or ignore it and
3307
+ // select no protocol (empty string).
3308
+ //
3309
+ // |peer| and |supported| must be vectors of 8-bit, length-prefixed byte
3310
+ // strings. The length byte itself is not included in the length. A byte string
3311
+ // of length 0 is invalid. No byte string may be truncated. |supported| must be
3312
+ // non-empty; a caller that supports no ALPN/NPN protocols should skip
3313
+ // negotiating the extension, rather than calling this function. If any of these
3314
+ // preconditions do not hold, this function will return |OPENSSL_NPN_NO_OVERLAP|
3315
+ // and set |*out| and |*out_len| to an empty buffer for robustness, but callers
3316
+ // are not recommended to rely on this. An empty buffer is not a valid output
3317
+ // for |SSL_CTX_set_alpn_select_cb|'s callback.
3318
+ //
3319
+ // WARNING: |*out| and |*out_len| may alias either |peer| or |supported| and may
3320
+ // not be used after one of those buffers is modified or released. Additionally,
3321
+ // this function is not const-correct for compatibility reasons. Although |*out|
3322
+ // is a non-const pointer, callers may not modify the buffer though |*out|.
3323
3323
  OPENSSL_EXPORT int SSL_select_next_proto(uint8_t **out, uint8_t *out_len,
3324
3324
  const uint8_t *peer, unsigned peer_len,
3325
3325
  const uint8_t *supported,
@@ -3383,10 +3383,10 @@ DEFINE_CONST_STACK_OF(SRTP_PROTECTION_PROFILE)
3383
3383
  #define SRTP_AES128_CM_SHA1_32 0x0002
3384
3384
  #define SRTP_AES128_F8_SHA1_80 0x0003
3385
3385
  #define SRTP_AES128_F8_SHA1_32 0x0004
3386
- #define SRTP_NULL_SHA1_80 0x0005
3387
- #define SRTP_NULL_SHA1_32 0x0006
3388
- #define SRTP_AEAD_AES_128_GCM 0x0007
3389
- #define SRTP_AEAD_AES_256_GCM 0x0008
3386
+ #define SRTP_NULL_SHA1_80 0x0005
3387
+ #define SRTP_NULL_SHA1_32 0x0006
3388
+ #define SRTP_AEAD_AES_128_GCM 0x0007
3389
+ #define SRTP_AEAD_AES_256_GCM 0x0008
3390
3390
 
3391
3391
  // SSL_CTX_set_srtp_profiles enables SRTP for all SSL objects created from
3392
3392
  // |ctx|. |profile| contains a colon-separated list of profile names. It returns
@@ -3521,6 +3521,120 @@ OPENSSL_EXPORT int SSL_CREDENTIAL_set1_delegated_credential(
3521
3521
  SSL_CREDENTIAL *cred, CRYPTO_BUFFER *dc);
3522
3522
 
3523
3523
 
3524
+ // Password Authenticated Key Exchange (PAKE).
3525
+ //
3526
+ // Password Authenticated Key Exchange protocols allow client and server to
3527
+ // mutually authenticate one another using knowledge of a password or other
3528
+ // low-entropy secret. While the TLS 1.3 pre-shared key (PSK) mechanism can
3529
+ // authenticate a high-entropy secret, it cannot be used with low-entropy
3530
+ // secrets as the PSK binder values can be used to mount a dictionary attack on
3531
+ // a low-entropy PSK. Using TLS 1.3 with a PAKE limits an attacker to confirming
3532
+ // one password guess per handshake attempt.
3533
+ //
3534
+ // WARNING: The PAKE mode in TLS is not a general-purpose authentication scheme.
3535
+ // As the underlying secret is still low-entropy, callers must limit brute force
3536
+ // attacks across multiple connections, especially in multi-connection protocols
3537
+ // such as HTTP. The |error_limit| and |rate_limit| parameters in the functions
3538
+ // below may be used to implement this, provided the same |SSL_CREDENTIAL|
3539
+ // object is used across connections. Applications using multiple connections
3540
+ // should use the PAKE credential only once to authenticate a high-entropy
3541
+ // secret, e.g. exporting a PSK from |SSL_export_keying_material|, and use the
3542
+ // high-entropy secret for subsequent connections.
3543
+ //
3544
+ // TODO(crbug.com/369963041): Implement RFC 9258 so one can actually do that.
3545
+ //
3546
+ // WARNING: PAKE support in TLS is still experimental and may change as the
3547
+ // standard evolves. See
3548
+ // https://chris-wood.github.io/draft-bmw-tls-pake13/draft-bmw-tls-pake13.html
3549
+ //
3550
+ // Currently, only the SPAKE2PLUS_V1 named PAKE algorithm is implemented; see
3551
+ // https://chris-wood.github.io/draft-bmw-tls-pake13/draft-bmw-tls-pake13.html#section-8.1.
3552
+
3553
+ // SSL_PAKE_SPAKE2PLUSV1 is the codepoint for SPAKE2PLUS_V1. See
3554
+ // https://chris-wood.github.io/draft-bmw-tls-pake13/draft-bmw-tls-pake13.html#name-named-pake-registry.
3555
+ #define SSL_PAKE_SPAKE2PLUSV1 0x7d96
3556
+
3557
+ // SSL_spake2plusv1_register computes the values that the client (w0,
3558
+ // w1) and server (w0, registration_record) require to run SPAKE2+. These values
3559
+ // can be used when calling |SSL_CREDENTIAL_new_spake2plusv1_client| and
3560
+ // |SSL_CREDENTIAL_new_spake2plusv1_server|. The client and server identities
3561
+ // must match the values passed to those functions.
3562
+ //
3563
+ // Returns one on success and zero on error.
3564
+ OPENSSL_EXPORT int SSL_spake2plusv1_register(
3565
+ uint8_t out_w0[32], uint8_t out_w1[32], uint8_t out_registration_record[65],
3566
+ const uint8_t *password, size_t password_len,
3567
+ const uint8_t *client_identity, size_t client_identity_len,
3568
+ const uint8_t *server_identity, size_t server_identity_len);
3569
+
3570
+ // SSL_CREDENTIAL_new_spake2plusv1_client creates a new |SSL_CREDENTIAL| that
3571
+ // authenticates using SPAKE2+. It is to be used with a TLS client.
3572
+ //
3573
+ // The |context|, |client_identity|, and |server_identity| fields serve to
3574
+ // identity the SPAKE2+ settings and both sides of a connection must agree on
3575
+ // these values. If |context| is |NULL|, a default value will be used.
3576
+ //
3577
+ // |error_limit| is the number of failed handshakes allowed on the credential.
3578
+ // After the limit is reached, using the credential will fail. Ideally this
3579
+ // value is set to 1. Setting it to a higher value allows an attacker to have
3580
+ // that many attempts at guessing the password using this |SSL_CREDENTIAL|.
3581
+ // (Assuming that multiple TLS connections are allowed.)
3582
+ //
3583
+ // |w0| and |w1| come from calling |SSL_spake2plusv1_register|.
3584
+ //
3585
+ // Unlike most |SSL_CREDENTIAL|s, PAKE client credentials must be the only
3586
+ // credential configured on the connection. BoringSSL does not currently support
3587
+ // configuring multiple PAKE credentials as a client, or configuring a mix of
3588
+ // PAKE and non-PAKE credentials. Once a PAKE credential is configured, the
3589
+ // connection will require the server to authenticate with the same secret, so a
3590
+ // successful connection then implies that the server supported the PAKE and
3591
+ // knew the password.
3592
+ OPENSSL_EXPORT SSL_CREDENTIAL *SSL_CREDENTIAL_new_spake2plusv1_client(
3593
+ const uint8_t *context, size_t context_len, const uint8_t *client_identity,
3594
+ size_t client_identity_len, const uint8_t *server_identity,
3595
+ size_t server_identity_len, uint32_t error_limit, const uint8_t *w0,
3596
+ size_t w0_len, const uint8_t *w1, size_t w1_len);
3597
+
3598
+ // SSL_CREDENTIAL_new_spake2plusv1_server creates a new |SSL_CREDENTIAL| that
3599
+ // authenticates using SPAKE2+. It is to be used with a TLS server.
3600
+ //
3601
+ // The |context|, |client_identity|, and |server_identity| fields serve to
3602
+ // identity the SPAKE2+ settings and both sides of a connection must agree on
3603
+ // these values. If |context| is |NULL|, a default value will be used.
3604
+ //
3605
+ // |rate_limit| is the number of failed or unfinished handshakes allowed on the
3606
+ // credential. After the limit is reached, using the credential will fail.
3607
+ // Ideally this value is set to 1. Setting it to a higher value allows an
3608
+ // attacker to have that many attempts at guessing the password using this
3609
+ // |SSL_CREDENTIAL|. (Assuming that multiple TLS connections are allowed.)
3610
+ //
3611
+ // WARNING: |rate_limit| differs from the client's |error_limit| parameter.
3612
+ // Server PAKE credentials must temporarily deduct incomplete handshakes from
3613
+ // the limit, until the peer completes the handshake correctly. Thus
3614
+ // applications use that multiple connections in parallel may need a higher
3615
+ // limit, and thus higher attacker exposure, to avoid failures. Such
3616
+ // applications should instead use one PAKE-based connection to established a
3617
+ // high-entropy secret (e.g. with |SSL_export_keying_material|) instead of
3618
+ // repeating the PAKE exchange for each connection.
3619
+ //
3620
+ // |w0| and |registration_record| come from calling |SSL_spake2plusv1_register|,
3621
+ // which may be computed externally so that the server does not know the
3622
+ // password, or a password-equivalent secret.
3623
+ //
3624
+ // A server wishing to support a PAKE should install one of these credentials.
3625
+ // It is also possible to install certificate-based credentials, in which case
3626
+ // both PAKE and non-PAKE clients can be supported. However, if only a PAKE
3627
+ // credential is installed then the server knows that any successfully-connected
3628
+ // clients also knows the password. Otherwise, the server must be careful to
3629
+ // inspect the credential used for a connection before assuming that.
3630
+ OPENSSL_EXPORT SSL_CREDENTIAL *SSL_CREDENTIAL_new_spake2plusv1_server(
3631
+ const uint8_t *context, size_t context_len, const uint8_t *client_identity,
3632
+ size_t client_identity_len, const uint8_t *server_identity,
3633
+ size_t server_identity_len, uint32_t rate_limit, const uint8_t *w0,
3634
+ size_t w0_len, const uint8_t *registration_record,
3635
+ size_t registration_record_len);
3636
+
3637
+
3524
3638
  // QUIC integration.
3525
3639
  //
3526
3640
  // QUIC acts as an underlying transport for the TLS 1.3 handshake. The following
@@ -3585,13 +3699,13 @@ OPENSSL_EXPORT int SSL_CREDENTIAL_set1_delegated_credential(
3585
3699
  // holds for any application protocol state remembered for 0-RTT, e.g. HTTP/3
3586
3700
  // SETTINGS.
3587
3701
 
3588
- // ssl_encryption_level_t represents a specific QUIC encryption level used to
3589
- // transmit handshake messages.
3702
+ // ssl_encryption_level_t represents an encryption level in TLS 1.3. Values in
3703
+ // this enum match the first 4 epochs used in DTLS 1.3 (section 6.1).
3590
3704
  enum ssl_encryption_level_t BORINGSSL_ENUM_INT {
3591
3705
  ssl_encryption_initial = 0,
3592
- ssl_encryption_early_data,
3593
- ssl_encryption_handshake,
3594
- ssl_encryption_application,
3706
+ ssl_encryption_early_data = 1,
3707
+ ssl_encryption_handshake = 2,
3708
+ ssl_encryption_application = 3,
3595
3709
  };
3596
3710
 
3597
3711
  // ssl_quic_method_st (aka |SSL_QUIC_METHOD|) describes custom QUIC hooks.
@@ -4331,18 +4445,18 @@ OPENSSL_EXPORT int SSL_set_handshake_hints(SSL *ssl, const uint8_t *hints,
4331
4445
 
4332
4446
  // SSL_CTX_set_msg_callback installs |cb| as the message callback for |ctx|.
4333
4447
  // This callback will be called when sending or receiving low-level record
4334
- // headers, complete handshake messages, ChangeCipherSpec, and alerts.
4335
- // |write_p| is one for outgoing messages and zero for incoming messages.
4448
+ // headers, complete handshake messages, ChangeCipherSpec, alerts, and DTLS
4449
+ // ACKs. |write_p| is one for outgoing messages and zero for incoming messages.
4336
4450
  //
4337
4451
  // For each record header, |cb| is called with |version| = 0 and |content_type|
4338
4452
  // = |SSL3_RT_HEADER|. The |len| bytes from |buf| contain the header. Note that
4339
4453
  // this does not include the record body. If the record is sealed, the length
4340
4454
  // in the header is the length of the ciphertext.
4341
4455
  //
4342
- // For each handshake message, ChangeCipherSpec, and alert, |version| is the
4343
- // protocol version and |content_type| is the corresponding record type. The
4344
- // |len| bytes from |buf| contain the handshake message, one-byte
4345
- // ChangeCipherSpec body, and two-byte alert, respectively.
4456
+ // For each handshake message, ChangeCipherSpec, alert, and DTLS ACK, |version|
4457
+ // is the protocol version and |content_type| is the corresponding record type.
4458
+ // The |len| bytes from |buf| contain the handshake message, one-byte
4459
+ // ChangeCipherSpec body, two-byte alert, and ACK respectively.
4346
4460
  //
4347
4461
  // In connections that enable ECH, |cb| is additionally called with
4348
4462
  // |content_type| = |SSL3_RT_CLIENT_HELLO_INNER| for each ClientHelloInner that
@@ -4547,6 +4661,8 @@ struct ssl_early_callback_ctx {
4547
4661
  size_t random_len;
4548
4662
  const uint8_t *session_id;
4549
4663
  size_t session_id_len;
4664
+ const uint8_t *dtls_cookie;
4665
+ size_t dtls_cookie_len;
4550
4666
  const uint8_t *cipher_suites;
4551
4667
  size_t cipher_suites_len;
4552
4668
  const uint8_t *compression_methods;
@@ -4567,6 +4683,16 @@ enum ssl_select_cert_result_t BORINGSSL_ENUM_INT {
4567
4683
  // ssl_select_cert_error indicates that a fatal error occured and the
4568
4684
  // handshake should be terminated.
4569
4685
  ssl_select_cert_error = -1,
4686
+ // ssl_select_cert_disable_ech indicates that, although an encrypted
4687
+ // ClientHelloInner was decrypted, it should be discarded. The certificate
4688
+ // selection callback will then be called again, passing in the
4689
+ // ClientHelloOuter instead. From there, the handshake will proceed
4690
+ // without retry_configs, to signal to the client to disable ECH.
4691
+ //
4692
+ // This value may only be returned when |SSL_ech_accepted| returnes one. It
4693
+ // may be useful if the ClientHelloInner indicated a service which does not
4694
+ // support ECH, e.g. if it is a TLS-1.2 only service.
4695
+ ssl_select_cert_disable_ech = -2,
4570
4696
  };
4571
4697
 
4572
4698
  // SSL_early_callback_ctx_extension_get searches the extensions in
@@ -4689,8 +4815,9 @@ OPENSSL_EXPORT int SSL_was_key_usage_invalid(const SSL *ssl);
4689
4815
  // a server (respectively, client) handshake completes, fails, or is paused.
4690
4816
  // The |value| argument is one if the handshake succeeded and <= 0
4691
4817
  // otherwise.
4692
- OPENSSL_EXPORT void SSL_CTX_set_info_callback(
4693
- SSL_CTX *ctx, void (*cb)(const SSL *ssl, int type, int value));
4818
+ OPENSSL_EXPORT void SSL_CTX_set_info_callback(SSL_CTX *ctx,
4819
+ void (*cb)(const SSL *ssl,
4820
+ int type, int value));
4694
4821
 
4695
4822
  // SSL_CTX_get_info_callback returns the callback set by
4696
4823
  // |SSL_CTX_set_info_callback|.
@@ -4700,8 +4827,9 @@ OPENSSL_EXPORT void (*SSL_CTX_get_info_callback(SSL_CTX *ctx))(const SSL *ssl,
4700
4827
 
4701
4828
  // SSL_set_info_callback configures a callback to be run at various events
4702
4829
  // during a connection's lifetime. See |SSL_CTX_set_info_callback|.
4703
- OPENSSL_EXPORT void SSL_set_info_callback(
4704
- SSL *ssl, void (*cb)(const SSL *ssl, int type, int value));
4830
+ OPENSSL_EXPORT void SSL_set_info_callback(SSL *ssl,
4831
+ void (*cb)(const SSL *ssl, int type,
4832
+ int value));
4705
4833
 
4706
4834
  // SSL_get_info_callback returns the callback set by |SSL_set_info_callback|.
4707
4835
  OPENSSL_EXPORT void (*SSL_get_info_callback(const SSL *ssl))(const SSL *ssl,
@@ -4793,28 +4921,23 @@ OPENSSL_EXPORT int SSL_used_hello_retry_request(const SSL *ssl);
4793
4921
  // https://bugs.openjdk.java.net/browse/JDK-8213202
4794
4922
  OPENSSL_EXPORT void SSL_set_jdk11_workaround(SSL *ssl, int enable);
4795
4923
 
4796
- // SSL_set_check_client_certificate_type configures whether the client, in
4797
- // TLS 1.2 and below, will check its certificate against the server's requested
4798
- // certificate types.
4924
+ // SSL_parse_client_hello decodes a ClientHello structure from |len| bytes in
4925
+ // |in|. On success, it returns one and writes the result to |*out|. Otherwise,
4926
+ // it returns zero. |ssl| will be saved into |*out| and determines how the
4927
+ // ClientHello is parsed, notably TLS vs DTLS. The fields in |*out| will alias
4928
+ // |in| and are only valid as long as |in| is valid and unchanged.
4799
4929
  //
4800
- // By default, this option is enabled. If disabled, certificate selection within
4801
- // the library may not function correctly. This flag is provided temporarily in
4802
- // case of compatibility issues. It will be removed sometime after June 2024.
4803
- OPENSSL_EXPORT void SSL_set_check_client_certificate_type(SSL *ssl, int enable);
4804
-
4805
- // SSL_set_check_ecdsa_curve configures whether the server, in TLS 1.2 and
4806
- // below, will check its certificate against the client's supported ECDSA
4807
- // curves.
4808
- //
4809
- // By default, this option is enabled. If disabled, certificate selection within
4810
- // the library may not function correctly. This flag is provided temporarily in
4811
- // case of compatibility issues. It will be removed sometime after June 2024.
4812
- OPENSSL_EXPORT void SSL_set_check_ecdsa_curve(SSL *ssl, int enable);
4930
+ // |in| should contain just the ClientHello structure (RFC 8446 and RFC 9147),
4931
+ // excluding the handshake header and already reassembled from record layer.
4932
+ // That is, |in| should begin with the legacy_version field, not the
4933
+ // client_hello HandshakeType constant or the handshake ContentType constant.
4934
+ OPENSSL_EXPORT int SSL_parse_client_hello(const SSL *ssl, SSL_CLIENT_HELLO *out,
4935
+ const uint8_t *in, size_t len);
4813
4936
 
4814
4937
 
4815
4938
  // Deprecated functions.
4816
4939
 
4817
- // SSL_library_init calls |CRYPTO_library_init| and returns one.
4940
+ // SSL_library_init returns one.
4818
4941
  OPENSSL_EXPORT int SSL_library_init(void);
4819
4942
 
4820
4943
  // SSL_CIPHER_description writes a description of |cipher| into |buf| and
@@ -5106,16 +5229,16 @@ OPENSSL_EXPORT int SSL_set1_sigalgs_list(SSL *ssl, const char *str);
5106
5229
 
5107
5230
  #define SSL_get_cipher(ssl) SSL_CIPHER_get_name(SSL_get_current_cipher(ssl))
5108
5231
  #define SSL_get_cipher_bits(ssl, out_alg_bits) \
5109
- SSL_CIPHER_get_bits(SSL_get_current_cipher(ssl), out_alg_bits)
5232
+ SSL_CIPHER_get_bits(SSL_get_current_cipher(ssl), out_alg_bits)
5110
5233
  #define SSL_get_cipher_version(ssl) \
5111
- SSL_CIPHER_get_version(SSL_get_current_cipher(ssl))
5234
+ SSL_CIPHER_get_version(SSL_get_current_cipher(ssl))
5112
5235
  #define SSL_get_cipher_name(ssl) \
5113
- SSL_CIPHER_get_name(SSL_get_current_cipher(ssl))
5236
+ SSL_CIPHER_get_name(SSL_get_current_cipher(ssl))
5114
5237
  #define SSL_get_time(session) SSL_SESSION_get_time(session)
5115
5238
  #define SSL_set_time(session, time) SSL_SESSION_set_time((session), (time))
5116
5239
  #define SSL_get_timeout(session) SSL_SESSION_get_timeout(session)
5117
5240
  #define SSL_set_timeout(session, timeout) \
5118
- SSL_SESSION_set_timeout((session), (timeout))
5241
+ SSL_SESSION_set_timeout((session), (timeout))
5119
5242
 
5120
5243
  struct ssl_comp_st {
5121
5244
  int id;
@@ -5216,19 +5339,19 @@ OPENSSL_EXPORT int SSL_want(const SSL *ssl);
5216
5339
  #define SSL_want_read(ssl) (SSL_want(ssl) == SSL_READING)
5217
5340
  #define SSL_want_write(ssl) (SSL_want(ssl) == SSL_WRITING)
5218
5341
 
5219
- // SSL_get_finished writes up to |count| bytes of the Finished message sent by
5220
- // |ssl| to |buf|. It returns the total untruncated length or zero if none has
5221
- // been sent yet. At TLS 1.3 and later, it returns zero.
5222
- //
5223
- // Use |SSL_get_tls_unique| instead.
5342
+ // SSL_get_finished writes up to |count| bytes of the Finished message sent by
5343
+ // |ssl| to |buf|. It returns the total untruncated length or zero if none has
5344
+ // been sent yet. At TLS 1.3 and later, it returns zero.
5345
+ //
5346
+ // Use |SSL_get_tls_unique| instead.
5224
5347
  OPENSSL_EXPORT size_t SSL_get_finished(const SSL *ssl, void *buf, size_t count);
5225
5348
 
5226
- // SSL_get_peer_finished writes up to |count| bytes of the Finished message
5227
- // received from |ssl|'s peer to |buf|. It returns the total untruncated length
5228
- // or zero if none has been received yet. At TLS 1.3 and later, it returns
5229
- // zero.
5230
- //
5231
- // Use |SSL_get_tls_unique| instead.
5349
+ // SSL_get_peer_finished writes up to |count| bytes of the Finished message
5350
+ // received from |ssl|'s peer to |buf|. It returns the total untruncated length
5351
+ // or zero if none has been received yet. At TLS 1.3 and later, it returns
5352
+ // zero.
5353
+ //
5354
+ // Use |SSL_get_tls_unique| instead.
5232
5355
  OPENSSL_EXPORT size_t SSL_get_peer_finished(const SSL *ssl, void *buf,
5233
5356
  size_t count);
5234
5357
 
@@ -5377,7 +5500,7 @@ OPENSSL_EXPORT SSL_SESSION *SSL_get1_session(SSL *ssl);
5377
5500
  #define OPENSSL_INIT_LOAD_SSL_STRINGS 0
5378
5501
  #define OPENSSL_INIT_SSL_DEFAULT 0
5379
5502
 
5380
- // OPENSSL_init_ssl calls |CRYPTO_library_init| and returns one.
5503
+ // OPENSSL_init_ssl returns one.
5381
5504
  OPENSSL_EXPORT int OPENSSL_init_ssl(uint64_t opts,
5382
5505
  const OPENSSL_INIT_SETTINGS *settings);
5383
5506
 
@@ -5560,12 +5683,20 @@ enum ssl_compliance_policy_t BORINGSSL_ENUM_INT {
5560
5683
  // other than by the supported signature algorithms. But WPA3's "192-bit"
5561
5684
  // mode requires at least P-384 or 3072-bit along the chain. The caller must
5562
5685
  // enforce this themselves on the verified chain using functions such as
5563
- // `X509_STORE_CTX_get0_chain`.
5686
+ // |X509_STORE_CTX_get0_chain|.
5564
5687
  //
5565
5688
  // Note that this setting is less secure than the default. The
5566
5689
  // implementation risks of using a more obscure primitive like P-384
5567
5690
  // dominate other considerations.
5568
5691
  ssl_compliance_policy_wpa3_192_202304,
5692
+
5693
+ // ssl_compliance_policy_cnsa_202407 confingures a TLS connection to use:
5694
+ // * For TLS 1.3, AES-256-GCM over AES-128-GCM over ChaCha20-Poly1305.
5695
+ //
5696
+ // I.e. it ensures that AES-GCM will be used whenever the client supports it.
5697
+ // The cipher suite configuration mini-language can be used to similarly
5698
+ // configure prior TLS versions if they are enabled.
5699
+ ssl_compliance_policy_cnsa_202407,
5569
5700
  };
5570
5701
 
5571
5702
  // SSL_CTX_set_compliance_policy configures various aspects of |ctx| based on
@@ -5576,11 +5707,20 @@ enum ssl_compliance_policy_t BORINGSSL_ENUM_INT {
5576
5707
  OPENSSL_EXPORT int SSL_CTX_set_compliance_policy(
5577
5708
  SSL_CTX *ctx, enum ssl_compliance_policy_t policy);
5578
5709
 
5710
+ // SSL_CTX_get_compliance_policy returns the compliance policy configured on
5711
+ // |ctx|.
5712
+ OPENSSL_EXPORT enum ssl_compliance_policy_t SSL_CTX_get_compliance_policy(
5713
+ const SSL_CTX *ctx);
5714
+
5579
5715
  // SSL_set_compliance_policy acts the same as |SSL_CTX_set_compliance_policy|,
5580
5716
  // but only configures a single |SSL*|.
5581
5717
  OPENSSL_EXPORT int SSL_set_compliance_policy(
5582
5718
  SSL *ssl, enum ssl_compliance_policy_t policy);
5583
5719
 
5720
+ // SSL_get_compliance_policy returns the compliance policy configured on
5721
+ // |ssl|.
5722
+ OPENSSL_EXPORT enum ssl_compliance_policy_t SSL_get_compliance_policy(
5723
+ const SSL *ssl);
5584
5724
 
5585
5725
  // Nodejs compatibility section (hidden).
5586
5726
  //
@@ -5603,7 +5743,7 @@ OPENSSL_EXPORT int SSL_set_compliance_policy(
5603
5743
  //
5604
5744
  // See PORTING.md in the BoringSSL source tree for a table of corresponding
5605
5745
  // functions.
5606
- // https://boringssl.googlesource.com/boringssl/+/master/PORTING.md#Replacements-for-values
5746
+ // https://boringssl.googlesource.com/boringssl/+/main/PORTING.md#Replacements-for-values
5607
5747
 
5608
5748
  #define DTLS_CTRL_GET_TIMEOUT doesnt_exist
5609
5749
  #define DTLS_CTRL_HANDLE_TIMEOUT doesnt_exist
@@ -5696,7 +5836,7 @@ OPENSSL_EXPORT int SSL_set_compliance_policy(
5696
5836
  #define SSL_CTX_set_session_cache_mode SSL_CTX_set_session_cache_mode
5697
5837
  #define SSL_CTX_set_tlsext_servername_arg SSL_CTX_set_tlsext_servername_arg
5698
5838
  #define SSL_CTX_set_tlsext_servername_callback \
5699
- SSL_CTX_set_tlsext_servername_callback
5839
+ SSL_CTX_set_tlsext_servername_callback
5700
5840
  #define SSL_CTX_set_tlsext_ticket_key_cb SSL_CTX_set_tlsext_ticket_key_cb
5701
5841
  #define SSL_CTX_set_tlsext_ticket_keys SSL_CTX_set_tlsext_ticket_keys
5702
5842
  #define SSL_CTX_set_tmp_dh SSL_CTX_set_tmp_dh
@@ -5714,7 +5854,7 @@ OPENSSL_EXPORT int SSL_set_compliance_policy(
5714
5854
  #define SSL_get_negotiated_group SSL_get_negotiated_group
5715
5855
  #define SSL_get_options SSL_get_options
5716
5856
  #define SSL_get_secure_renegotiation_support \
5717
- SSL_get_secure_renegotiation_support
5857
+ SSL_get_secure_renegotiation_support
5718
5858
  #define SSL_need_tmp_RSA SSL_need_tmp_RSA
5719
5859
  #define SSL_num_renegotiations SSL_num_renegotiations
5720
5860
  #define SSL_session_reused SSL_session_reused
@@ -5734,7 +5874,7 @@ OPENSSL_EXPORT int SSL_set_compliance_policy(
5734
5874
  #define SSL_set_tmp_rsa SSL_set_tmp_rsa
5735
5875
  #define SSL_total_renegotiations SSL_total_renegotiations
5736
5876
 
5737
- #endif // !defined(BORINGSSL_PREFIX)
5877
+ #endif // !defined(BORINGSSL_PREFIX)
5738
5878
 
5739
5879
 
5740
5880
  #if defined(__cplusplus)
@@ -5814,9 +5954,12 @@ OPENSSL_EXPORT bool SSL_serialize_handback(const SSL *ssl, CBB *out);
5814
5954
  OPENSSL_EXPORT bool SSL_apply_handback(SSL *ssl, Span<const uint8_t> handback);
5815
5955
 
5816
5956
  // SSL_get_traffic_secrets sets |*out_read_traffic_secret| and
5817
- // |*out_write_traffic_secret| to reference the TLS 1.3 traffic secrets for
5818
- // |ssl|. This function is only valid on TLS 1.3 connections that have
5819
- // completed the handshake. It returns true on success and false on error.
5957
+ // |*out_write_traffic_secret| to reference the current TLS 1.3 traffic secrets
5958
+ // for |ssl|. It returns true on success and false on error.
5959
+ //
5960
+ // This function is only valid on TLS 1.3 connections that have completed the
5961
+ // handshake. It is not valid for QUIC or DTLS, where multiple traffic secrets
5962
+ // may be active at a time.
5820
5963
  OPENSSL_EXPORT bool SSL_get_traffic_secrets(
5821
5964
  const SSL *ssl, Span<const uint8_t> *out_read_traffic_secret,
5822
5965
  Span<const uint8_t> *out_write_traffic_secret);
@@ -6021,7 +6164,6 @@ BSSL_NAMESPACE_END
6021
6164
  #define SSL_R_WRONG_VERSION_ON_EARLY_DATA 278
6022
6165
  #define SSL_R_UNEXPECTED_EXTENSION_ON_EARLY_DATA 279
6023
6166
  #define SSL_R_NO_SUPPORTED_VERSIONS_ENABLED 280
6024
- #define SSL_R_APPLICATION_DATA_INSTEAD_OF_HANDSHAKE 281
6025
6167
  #define SSL_R_EMPTY_HELLO_RETRY_REQUEST 282
6026
6168
  #define SSL_R_EARLY_DATA_NOT_IN_USE 283
6027
6169
  #define SSL_R_HANDSHAKE_NOT_COMPLETE 284
@@ -6063,6 +6205,11 @@ BSSL_NAMESPACE_END
6063
6205
  #define SSL_R_INVALID_OUTER_EXTENSION 320
6064
6206
  #define SSL_R_INCONSISTENT_ECH_NEGOTIATION 321
6065
6207
  #define SSL_R_INVALID_ALPS_CODEPOINT 322
6208
+ #define SSL_R_NO_MATCHING_ISSUER 323
6209
+ #define SSL_R_INVALID_SPAKE2PLUSV1_VALUE 324
6210
+ #define SSL_R_PAKE_EXHAUSTED 325
6211
+ #define SSL_R_PEER_PAKE_MISMATCH 326
6212
+ #define SSL_R_UNSUPPORTED_CREDENTIAL_LIST 327
6066
6213
  #define SSL_R_SSLV3_ALERT_CLOSE_NOTIFY 1000
6067
6214
  #define SSL_R_SSLV3_ALERT_UNEXPECTED_MESSAGE 1010
6068
6215
  #define SSL_R_SSLV3_ALERT_BAD_RECORD_MAC 1020
@@ -6097,5 +6244,6 @@ BSSL_NAMESPACE_END
6097
6244
  #define SSL_R_TLSV1_ALERT_CERTIFICATE_REQUIRED 1116
6098
6245
  #define SSL_R_TLSV1_ALERT_NO_APPLICATION_PROTOCOL 1120
6099
6246
  #define SSL_R_TLSV1_ALERT_ECH_REQUIRED 1121
6247
+ #define SSL_R_PAKE_AND_KEY_SHARE_NOT_ALLOWED 1122
6100
6248
 
6101
6249
  #endif // OPENSSL_HEADER_SSL_H