grpc 1.53.0 → 1.55.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (1521) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +132 -89
  3. data/include/grpc/event_engine/event_engine.h +30 -14
  4. data/include/grpc/grpc_security.h +4 -0
  5. data/include/grpc/impl/grpc_types.h +13 -2
  6. data/include/grpc/support/port_platform.h +4 -4
  7. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +12 -1
  8. data/src/core/ext/filters/client_channel/backend_metric.cc +8 -1
  9. data/src/core/ext/filters/client_channel/backup_poller.cc +2 -11
  10. data/src/core/ext/filters/client_channel/backup_poller.h +0 -3
  11. data/src/core/ext/filters/client_channel/client_channel.cc +853 -822
  12. data/src/core/ext/filters/client_channel/client_channel.h +140 -178
  13. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +1 -1
  14. data/src/core/ext/filters/client_channel/client_channel_internal.h +82 -0
  15. data/src/core/ext/filters/client_channel/client_channel_service_config.cc +2 -2
  16. data/src/core/ext/filters/client_channel/config_selector.h +9 -20
  17. data/src/core/ext/filters/client_channel/health/health_check_client.cc +1 -1
  18. data/src/core/ext/filters/client_channel/http_proxy.cc +35 -2
  19. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +6 -1
  20. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +19 -20
  21. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +1 -1
  22. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  23. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +5 -5
  24. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +3 -3
  25. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +134 -151
  26. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +46 -61
  27. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +14 -10
  28. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +70 -33
  29. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +14 -6
  30. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +3 -3
  31. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +12 -5
  32. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +5 -8
  33. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +9 -9
  34. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +6 -6
  35. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +5 -4
  36. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +46 -153
  37. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h +30 -0
  38. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +4 -4
  39. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +60 -0
  40. data/src/core/ext/filters/client_channel/resolver/dns/{dns_resolver_selection.h → dns_resolver_plugin.h} +10 -12
  41. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +524 -0
  42. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h +35 -0
  43. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc +97 -0
  44. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h +32 -0
  45. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +19 -36
  46. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h +24 -0
  47. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +34 -181
  48. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +1 -2
  49. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +1 -2
  50. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +11 -36
  51. data/src/core/ext/filters/client_channel/retry_filter.cc +117 -156
  52. data/src/core/ext/filters/client_channel/retry_service_config.cc +8 -8
  53. data/src/core/ext/filters/client_channel/subchannel.cc +2 -4
  54. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +26 -27
  55. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +8 -5
  56. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +1 -1
  57. data/src/core/ext/filters/http/client/http_client_filter.cc +3 -3
  58. data/src/core/ext/filters/http/http_filters_plugin.cc +1 -12
  59. data/src/core/ext/filters/http/message_compress/compression_filter.cc +29 -13
  60. data/src/core/ext/filters/message_size/message_size_filter.cc +141 -224
  61. data/src/core/ext/filters/message_size/message_size_filter.h +48 -3
  62. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +68 -69
  63. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +7 -6
  64. data/src/core/ext/gcp/metadata_query.cc +137 -0
  65. data/src/core/ext/gcp/metadata_query.h +87 -0
  66. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +70 -55
  67. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +12 -8
  68. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +5 -1
  69. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +226 -82
  70. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +21 -0
  71. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +70 -0
  72. data/src/core/ext/transport/chttp2/transport/flow_control.cc +5 -2
  73. data/src/core/ext/transport/chttp2/transport/flow_control.h +2 -1
  74. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -7
  75. data/src/core/ext/transport/chttp2/transport/frame_ping.h +0 -3
  76. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +4 -1
  77. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +118 -222
  78. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +296 -113
  79. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +2 -0
  80. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +2 -0
  81. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +466 -273
  82. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +7 -3
  83. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +15 -12
  84. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +9 -1
  85. data/src/core/ext/transport/chttp2/transport/internal.h +20 -6
  86. data/src/core/ext/transport/chttp2/transport/parsing.cc +9 -2
  87. data/src/core/ext/transport/chttp2/transport/writing.cc +24 -8
  88. data/src/core/ext/transport/inproc/inproc_transport.cc +20 -14
  89. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +87 -52
  90. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +414 -181
  91. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -60
  92. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +481 -224
  93. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +90 -55
  94. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +415 -188
  95. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +357 -210
  96. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1572 -729
  97. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +30 -17
  98. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +144 -47
  99. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +34 -21
  100. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -62
  101. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +27 -14
  102. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +78 -38
  103. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +20 -11
  104. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +48 -26
  105. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +20 -11
  106. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +48 -26
  107. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +109 -62
  108. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +566 -244
  109. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +21 -12
  110. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +45 -30
  111. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +22 -19
  112. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +82 -29
  113. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +23 -16
  114. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +45 -30
  115. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +230 -143
  116. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +733 -404
  117. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +417 -262
  118. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1850 -888
  119. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -41
  120. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +286 -148
  121. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +531 -334
  122. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2017 -1131
  123. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -12
  124. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +45 -30
  125. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +89 -52
  126. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +347 -232
  127. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +264 -165
  128. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +888 -476
  129. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +139 -80
  130. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +527 -274
  131. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -13
  132. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +50 -36
  133. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +380 -221
  134. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1168 -611
  135. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +166 -94
  136. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +666 -292
  137. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +18 -11
  138. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +37 -26
  139. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +21 -12
  140. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +45 -30
  141. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +30 -17
  142. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +144 -47
  143. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +274 -167
  144. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +789 -440
  145. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +228 -137
  146. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +1100 -501
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -13
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +60 -37
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +350 -209
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1083 -635
  151. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +44 -11
  152. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +175 -18
  153. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +34 -19
  154. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +118 -56
  155. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +38 -21
  156. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +148 -64
  157. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +31 -18
  158. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +143 -65
  159. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +22 -13
  160. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +51 -37
  161. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +78 -43
  162. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +265 -127
  163. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +145 -88
  164. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +438 -241
  165. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +115 -62
  166. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +559 -227
  167. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +18 -11
  168. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +35 -26
  169. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +187 -109
  170. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +956 -421
  171. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +172 -95
  172. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +864 -374
  173. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +49 -25
  174. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +171 -100
  175. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +39 -18
  176. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +74 -56
  177. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +28 -15
  178. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +71 -45
  179. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +131 -74
  180. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +489 -249
  181. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +135 -80
  182. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +505 -245
  183. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +256 -129
  184. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +996 -397
  185. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +80 -49
  186. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +616 -201
  187. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +1283 -774
  188. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +5430 -2509
  189. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +49 -28
  190. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +164 -84
  191. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +228 -141
  192. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +738 -399
  193. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +20 -11
  194. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +48 -26
  195. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +21 -12
  196. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +45 -30
  197. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +32 -19
  198. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +70 -49
  199. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +27 -14
  200. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +110 -43
  201. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +46 -25
  202. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +259 -100
  203. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +21 -13
  204. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +45 -30
  205. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +18 -11
  206. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +35 -26
  207. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +42 -23
  208. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +108 -70
  209. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +7 -4
  210. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +21 -16
  211. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +43 -24
  212. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +110 -75
  213. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +30 -17
  214. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +95 -50
  215. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +16 -9
  216. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -23
  217. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +60 -37
  218. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +150 -108
  219. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +74 -43
  220. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +357 -167
  221. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +44 -25
  222. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +114 -80
  223. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +41 -20
  224. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +245 -82
  225. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +32 -19
  226. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +73 -51
  227. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +474 -292
  228. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2144 -1055
  229. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +18 -11
  230. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +35 -26
  231. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +34 -19
  232. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +125 -67
  233. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +72 -45
  234. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +193 -138
  235. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +34 -19
  236. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +131 -66
  237. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +18 -11
  238. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +35 -26
  239. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +7 -4
  240. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +15 -10
  241. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +184 -96
  242. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +907 -360
  243. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +56 -33
  244. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -101
  245. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +188 -111
  246. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +816 -419
  247. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +32 -19
  248. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +109 -53
  249. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +10 -7
  250. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +18 -14
  251. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +300 -177
  252. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +1284 -522
  253. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +42 -23
  254. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +188 -75
  255. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +130 -83
  256. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +510 -238
  257. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +22 -13
  258. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +55 -34
  259. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +39 -26
  260. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +124 -68
  261. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +21 -12
  262. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +47 -30
  263. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +60 -26
  264. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +130 -51
  265. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +37 -20
  266. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +133 -63
  267. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +22 -13
  268. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +91 -40
  269. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -12
  270. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +50 -32
  271. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +18 -11
  272. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +37 -26
  273. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +46 -27
  274. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +101 -70
  275. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +13 -10
  276. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +25 -22
  277. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +40 -23
  278. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +161 -75
  279. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +31 -18
  280. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +114 -56
  281. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +46 -29
  282. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +139 -91
  283. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +65 -42
  284. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +200 -121
  285. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +80 -45
  286. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +208 -131
  287. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +34 -21
  288. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +74 -53
  289. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +7 -4
  290. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +13 -8
  291. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +16 -9
  292. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +28 -18
  293. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +28 -15
  294. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +55 -34
  295. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +43 -22
  296. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +91 -53
  297. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +35 -20
  298. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +92 -57
  299. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +7 -4
  300. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +13 -8
  301. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -11
  302. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +48 -26
  303. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +23 -14
  304. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +61 -41
  305. data/src/core/ext/upb-generated/google/api/annotations.upb.c +14 -11
  306. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -20
  307. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +255 -154
  308. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +934 -450
  309. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +299 -180
  310. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +946 -483
  311. data/src/core/ext/upb-generated/google/api/http.upb.c +68 -35
  312. data/src/core/ext/upb-generated/google/api/http.upb.h +284 -120
  313. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +22 -13
  314. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +95 -37
  315. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -10
  316. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +38 -22
  317. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +1018 -424
  318. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +3851 -1412
  319. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -10
  320. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +38 -22
  321. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +10 -7
  322. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +18 -14
  323. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +62 -39
  324. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +207 -102
  325. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -10
  326. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +38 -22
  327. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +90 -51
  328. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +157 -107
  329. data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -13
  330. data/src/core/ext/upb-generated/google/rpc/status.upb.h +95 -37
  331. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +59 -34
  332. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +154 -92
  333. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +43 -24
  334. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +118 -60
  335. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +250 -145
  336. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +919 -415
  337. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +34 -19
  338. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +76 -51
  339. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +25 -14
  340. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +45 -30
  341. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +144 -81
  342. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +405 -217
  343. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +51 -26
  344. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +153 -61
  345. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +173 -102
  346. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +855 -298
  347. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +68 -49
  348. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +155 -104
  349. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +26 -17
  350. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +55 -34
  351. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +12 -9
  352. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +31 -14
  353. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +26 -17
  354. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +55 -34
  355. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +23 -16
  356. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +45 -30
  357. data/src/core/ext/upb-generated/validate/validate.upb.c +845 -455
  358. data/src/core/ext/upb-generated/validate/validate.upb.h +4347 -1908
  359. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +68 -49
  360. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +155 -104
  361. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +26 -17
  362. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +55 -34
  363. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +12 -9
  364. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +31 -14
  365. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +65 -44
  366. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +137 -91
  367. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +23 -16
  368. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +45 -30
  369. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +16 -9
  370. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +28 -18
  371. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +21 -12
  372. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +45 -30
  373. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +37 -22
  374. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +96 -63
  375. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +26 -17
  376. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +52 -29
  377. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +21 -12
  378. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +45 -30
  379. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +23 -14
  380. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +62 -42
  381. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +44 -25
  382. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +169 -79
  383. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +27 -14
  384. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +65 -38
  385. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +77 -31
  386. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +203 -58
  387. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +21 -12
  388. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +89 -34
  389. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +18 -11
  390. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +35 -26
  391. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +32 -19
  392. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +150 -54
  393. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +10 -7
  394. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +18 -14
  395. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +34 -21
  396. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +161 -63
  397. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +162 -101
  398. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +501 -293
  399. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +85 -52
  400. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +430 -164
  401. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +24 -15
  402. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +53 -37
  403. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +40 -23
  404. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +161 -75
  405. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +37 -22
  406. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +92 -66
  407. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +43 -22
  408. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +91 -53
  409. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +21 -12
  410. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +45 -30
  411. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +1 -1
  412. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +6 -5
  413. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +1 -1
  414. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +6 -5
  415. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +1 -1
  416. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +6 -5
  417. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +1 -1
  418. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +6 -5
  419. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +1 -1
  420. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +6 -5
  421. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +1 -1
  422. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +6 -5
  423. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +1 -1
  424. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +6 -5
  425. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +1 -1
  426. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +6 -5
  427. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +1 -1
  428. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +6 -5
  429. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +1 -1
  430. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +6 -5
  431. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +1 -1
  432. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +6 -5
  433. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +1 -1
  434. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +6 -5
  435. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +1 -1
  436. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +6 -5
  437. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +1 -1
  438. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +6 -5
  439. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +251 -248
  440. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +6 -5
  441. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +1 -1
  442. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +6 -5
  443. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +1 -1
  444. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +6 -5
  445. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +1 -1
  446. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +6 -5
  447. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +1 -1
  448. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +6 -5
  449. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +1 -1
  450. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +6 -5
  451. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +1 -1
  452. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +6 -5
  453. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +1 -1
  454. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +6 -5
  455. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +1 -1
  456. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +6 -5
  457. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +13 -12
  458. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +11 -5
  459. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +1 -1
  460. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +6 -5
  461. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +1 -1
  462. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +6 -5
  463. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +1 -1
  464. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +6 -5
  465. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +1 -1
  466. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +6 -5
  467. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +1 -1
  468. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +6 -5
  469. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +1 -1
  470. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +6 -5
  471. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +140 -137
  472. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +6 -5
  473. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +32 -16
  474. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +11 -5
  475. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +1 -1
  476. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +6 -5
  477. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +1 -1
  478. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +6 -5
  479. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +1 -1
  480. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +6 -5
  481. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +1 -1
  482. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +6 -5
  483. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +1 -1
  484. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +6 -5
  485. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +1 -1
  486. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +6 -5
  487. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +1 -1
  488. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +6 -5
  489. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +1 -1
  490. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +6 -5
  491. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +13 -10
  492. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +21 -5
  493. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +1 -1
  494. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +6 -5
  495. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +55 -46
  496. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +6 -5
  497. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +1 -1
  498. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +6 -5
  499. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +1 -1
  500. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +6 -5
  501. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +1 -1
  502. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +6 -5
  503. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +1 -1
  504. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +6 -5
  505. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +142 -120
  506. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +16 -5
  507. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +1 -1
  508. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +6 -5
  509. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +101 -98
  510. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +6 -5
  511. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +1 -1
  512. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +6 -5
  513. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +1 -1
  514. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +6 -5
  515. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +1 -1
  516. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +6 -5
  517. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +1 -1
  518. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +6 -5
  519. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +1 -1
  520. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +6 -5
  521. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +1 -1
  522. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +6 -5
  523. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +1 -1
  524. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +6 -5
  525. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +16 -19
  526. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +6 -5
  527. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +1 -1
  528. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +6 -5
  529. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +1 -1
  530. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +6 -5
  531. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +1 -1
  532. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +6 -5
  533. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +1 -1
  534. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +6 -5
  535. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +1 -1
  536. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +6 -5
  537. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +1 -1
  538. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +6 -5
  539. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +1 -1
  540. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +6 -5
  541. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +1 -1
  542. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +6 -5
  543. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +1 -1
  544. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +6 -5
  545. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +1 -1
  546. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +6 -5
  547. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +1 -1
  548. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +6 -5
  549. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +126 -115
  550. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +6 -5
  551. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +1 -1
  552. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +6 -5
  553. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +1 -1
  554. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +6 -5
  555. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +138 -136
  556. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +6 -5
  557. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +1 -1
  558. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +6 -5
  559. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +118 -118
  560. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +6 -5
  561. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +1 -1
  562. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +6 -5
  563. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +6 -6
  564. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +6 -5
  565. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +1 -1
  566. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +6 -5
  567. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +6 -6
  568. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +6 -5
  569. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +12 -13
  570. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +6 -5
  571. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +1 -1
  572. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +6 -5
  573. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +1 -1
  574. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +6 -5
  575. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +1 -1
  576. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +6 -5
  577. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +13 -10
  578. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +11 -5
  579. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +1 -1
  580. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +6 -5
  581. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +1 -1
  582. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +6 -5
  583. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +1 -1
  584. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +6 -5
  585. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +1 -1
  586. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +6 -5
  587. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +1 -1
  588. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +6 -5
  589. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +1 -1
  590. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +6 -5
  591. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +1 -1
  592. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +6 -5
  593. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +1 -1
  594. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +6 -5
  595. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +1 -1
  596. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +6 -5
  597. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +1 -1
  598. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +6 -5
  599. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +1 -1
  600. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +6 -5
  601. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +1 -1
  602. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +6 -5
  603. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +1 -1
  604. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +6 -5
  605. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +1 -1
  606. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +6 -5
  607. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +1 -1
  608. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +6 -5
  609. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +1 -1
  610. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +6 -5
  611. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +1 -1
  612. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +6 -5
  613. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +1 -1
  614. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +6 -5
  615. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +1 -1
  616. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +6 -5
  617. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +1 -1
  618. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +6 -5
  619. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +1 -1
  620. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +6 -5
  621. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +1 -1
  622. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +6 -5
  623. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +1 -1
  624. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +6 -5
  625. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +1 -1
  626. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +6 -5
  627. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +1 -1
  628. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +6 -5
  629. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +1 -1
  630. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +6 -5
  631. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +329 -273
  632. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +11 -5
  633. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +1 -1
  634. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +6 -5
  635. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +1 -1
  636. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +6 -5
  637. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +1 -1
  638. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +6 -5
  639. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +1 -1
  640. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +6 -5
  641. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +1 -1
  642. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +6 -5
  643. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +1 -1
  644. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +6 -5
  645. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +1 -1
  646. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +6 -5
  647. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +1 -1
  648. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +6 -5
  649. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +1 -1
  650. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +6 -5
  651. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +1 -1
  652. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +6 -5
  653. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +1 -1
  654. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +6 -5
  655. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +1 -1
  656. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +6 -5
  657. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +1 -1
  658. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +6 -5
  659. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +1 -1
  660. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +6 -5
  661. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +1 -1
  662. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +6 -5
  663. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +1 -1
  664. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +6 -5
  665. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +1 -1
  666. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +6 -5
  667. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +1 -1
  668. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +6 -5
  669. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +1 -1
  670. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +6 -5
  671. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +1 -1
  672. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +6 -5
  673. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +1 -1
  674. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +6 -5
  675. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +1 -1
  676. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +6 -5
  677. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +1 -1
  678. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +6 -5
  679. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +1 -1
  680. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +6 -5
  681. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +1 -1
  682. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +6 -5
  683. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +1 -1
  684. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +6 -5
  685. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +1 -1
  686. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +6 -5
  687. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +1 -1
  688. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +6 -5
  689. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +1 -1
  690. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +6 -5
  691. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  692. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  693. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +1 -1
  694. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +6 -5
  695. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +1 -1
  696. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +6 -5
  697. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +1 -1
  698. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +6 -5
  699. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +1 -1
  700. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +6 -5
  701. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +1 -1
  702. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +6 -5
  703. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +1 -1
  704. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +6 -5
  705. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +1 -1
  706. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +6 -5
  707. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +1 -1
  708. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +6 -5
  709. data/src/core/ext/xds/certificate_provider_store.cc +4 -4
  710. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +7 -7
  711. data/src/core/ext/xds/upb_utils.h +1 -1
  712. data/src/core/ext/xds/xds_api.cc +34 -14
  713. data/src/core/ext/xds/xds_api.h +2 -2
  714. data/src/core/ext/xds/xds_bootstrap.cc +3 -3
  715. data/src/core/ext/xds/xds_bootstrap_grpc.cc +15 -15
  716. data/src/core/ext/xds/xds_channel_stack_modifier.cc +1 -2
  717. data/src/core/ext/xds/xds_client.cc +24 -3
  718. data/src/core/ext/xds/xds_client.h +1 -1
  719. data/src/core/ext/xds/xds_client_stats.cc +29 -15
  720. data/src/core/ext/xds/xds_client_stats.h +24 -20
  721. data/src/core/ext/xds/xds_cluster.cc +26 -34
  722. data/src/core/ext/xds/xds_cluster.h +1 -2
  723. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +4 -3
  724. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +2 -2
  725. data/src/core/ext/xds/xds_common_types.cc +5 -4
  726. data/src/core/ext/xds/xds_endpoint.cc +10 -4
  727. data/src/core/ext/xds/xds_endpoint.h +10 -2
  728. data/src/core/ext/xds/xds_http_fault_filter.cc +2 -2
  729. data/src/core/ext/xds/xds_http_fault_filter.h +1 -1
  730. data/src/core/ext/xds/xds_http_filters.h +3 -2
  731. data/src/core/ext/xds/xds_http_rbac_filter.cc +7 -9
  732. data/src/core/ext/xds/xds_http_rbac_filter.h +1 -1
  733. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +2 -2
  734. data/src/core/ext/xds/xds_http_stateful_session_filter.h +1 -1
  735. data/src/core/ext/xds/xds_lb_policy_registry.cc +17 -22
  736. data/src/core/ext/xds/xds_listener.cc +10 -4
  737. data/src/core/ext/xds/xds_listener.h +1 -1
  738. data/src/core/ext/xds/xds_resource_type.h +2 -2
  739. data/src/core/ext/xds/xds_route_config.cc +8 -5
  740. data/src/core/ext/xds/xds_route_config.h +1 -1
  741. data/src/core/ext/xds/xds_transport_grpc.cc +1 -1
  742. data/src/core/lib/backoff/random_early_detection.cc +31 -0
  743. data/src/core/lib/backoff/random_early_detection.h +59 -0
  744. data/src/core/lib/channel/call_finalization.h +1 -1
  745. data/src/core/lib/channel/call_tracer.cc +51 -0
  746. data/src/core/lib/channel/call_tracer.h +101 -38
  747. data/src/core/lib/channel/channelz.cc +5 -4
  748. data/src/core/lib/channel/channelz_registry.cc +7 -6
  749. data/src/core/lib/channel/connected_channel.cc +533 -1045
  750. data/src/core/lib/channel/context.h +8 -1
  751. data/src/core/lib/channel/promise_based_filter.cc +100 -42
  752. data/src/core/lib/channel/promise_based_filter.h +27 -13
  753. data/src/core/lib/channel/server_call_tracer_filter.cc +110 -0
  754. data/src/core/lib/config/config_vars.cc +151 -0
  755. data/src/core/lib/config/config_vars.h +127 -0
  756. data/src/core/lib/config/config_vars_non_generated.cc +51 -0
  757. data/src/core/lib/config/load_config.cc +66 -0
  758. data/src/core/lib/config/load_config.h +49 -0
  759. data/src/core/lib/debug/trace.cc +21 -13
  760. data/src/core/lib/debug/trace.h +12 -9
  761. data/src/core/lib/event_engine/event_engine.cc +37 -2
  762. data/src/core/lib/event_engine/handle_containers.h +7 -22
  763. data/src/core/lib/event_engine/memory_allocator_factory.h +47 -0
  764. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +0 -4
  765. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +3 -9
  766. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +48 -15
  767. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +8 -8
  768. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +14 -31
  769. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +6 -3
  770. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +33 -19
  771. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -3
  772. data/src/core/lib/event_engine/resolved_address.cc +2 -1
  773. data/src/core/lib/event_engine/shim.cc +2 -0
  774. data/src/core/lib/event_engine/trace.cc +1 -0
  775. data/src/core/lib/event_engine/trace.h +6 -0
  776. data/src/core/lib/event_engine/windows/win_socket.cc +0 -1
  777. data/src/core/lib/event_engine/windows/windows_endpoint.cc +129 -82
  778. data/src/core/lib/event_engine/windows/windows_endpoint.h +21 -5
  779. data/src/core/lib/event_engine/windows/windows_engine.cc +39 -18
  780. data/src/core/lib/event_engine/windows/windows_engine.h +2 -1
  781. data/src/core/lib/event_engine/windows/windows_listener.cc +370 -0
  782. data/src/core/lib/event_engine/windows/windows_listener.h +155 -0
  783. data/src/core/lib/experiments/config.cc +3 -10
  784. data/src/core/lib/experiments/experiments.cc +10 -0
  785. data/src/core/lib/experiments/experiments.h +12 -1
  786. data/src/core/lib/gpr/log.cc +15 -28
  787. data/src/core/lib/gpr/{time_posix.cc → posix/time.cc} +5 -0
  788. data/src/core/lib/gprpp/fork.cc +8 -14
  789. data/src/core/lib/gprpp/orphanable.h +4 -3
  790. data/src/core/lib/gprpp/per_cpu.h +9 -3
  791. data/src/core/lib/gprpp/{thd_posix.cc → posix/thd.cc} +49 -37
  792. data/src/core/lib/gprpp/ref_counted.h +33 -34
  793. data/src/core/lib/gprpp/status_helper.cc +2 -2
  794. data/src/core/lib/gprpp/thd.h +16 -0
  795. data/src/core/lib/gprpp/time.cc +1 -0
  796. data/src/core/lib/gprpp/time.h +4 -4
  797. data/src/core/lib/gprpp/validation_errors.cc +8 -3
  798. data/src/core/lib/gprpp/validation_errors.h +16 -9
  799. data/src/core/lib/gprpp/{thd_windows.cc → windows/thd.cc} +2 -2
  800. data/src/core/lib/iomgr/buffer_list.h +0 -1
  801. data/src/core/lib/iomgr/call_combiner.h +2 -2
  802. data/src/core/lib/iomgr/endpoint_cfstream.cc +4 -2
  803. data/src/core/lib/iomgr/endpoint_pair.h +2 -2
  804. data/src/core/lib/iomgr/endpoint_pair_posix.cc +2 -2
  805. data/src/core/lib/iomgr/endpoint_pair_windows.cc +1 -1
  806. data/src/core/lib/iomgr/ev_posix.cc +13 -53
  807. data/src/core/lib/iomgr/ev_posix.h +0 -3
  808. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +103 -76
  809. data/src/core/lib/iomgr/iomgr.cc +4 -8
  810. data/src/core/lib/iomgr/iomgr_windows.cc +8 -2
  811. data/src/core/lib/iomgr/pollset_set_windows.cc +9 -9
  812. data/src/core/lib/iomgr/pollset_windows.cc +1 -1
  813. data/src/core/lib/iomgr/socket_utils_common_posix.cc +16 -3
  814. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  815. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  816. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -0
  817. data/src/core/lib/iomgr/tcp_client_windows.cc +2 -2
  818. data/src/core/lib/iomgr/tcp_posix.cc +0 -1
  819. data/src/core/lib/iomgr/tcp_server_posix.cc +5 -16
  820. data/src/core/lib/iomgr/tcp_server_windows.cc +176 -9
  821. data/src/core/lib/iomgr/tcp_windows.cc +12 -8
  822. data/src/core/lib/iomgr/timer_generic.cc +17 -16
  823. data/src/core/lib/json/json.h +61 -113
  824. data/src/core/lib/json/json_object_loader.cc +20 -20
  825. data/src/core/lib/json/json_object_loader.h +8 -3
  826. data/src/core/lib/json/json_reader.cc +58 -38
  827. data/src/core/{ext/filters/client_channel/lb_call_state_internal.h → lib/json/json_reader.h} +7 -12
  828. data/src/core/lib/json/json_util.cc +6 -6
  829. data/src/core/lib/json/json_util.h +5 -4
  830. data/src/core/lib/json/json_writer.cc +19 -19
  831. data/src/core/lib/{security/security_connector/ssl_utils_config.h → json/json_writer.h} +14 -10
  832. data/src/core/lib/load_balancing/lb_policy.cc +9 -13
  833. data/src/core/lib/load_balancing/lb_policy.h +4 -2
  834. data/src/core/lib/load_balancing/lb_policy_registry.cc +7 -7
  835. data/src/core/lib/promise/activity.cc +22 -6
  836. data/src/core/lib/promise/activity.h +61 -24
  837. data/src/core/lib/promise/cancel_callback.h +77 -0
  838. data/src/core/lib/promise/detail/basic_seq.h +1 -1
  839. data/src/core/lib/promise/detail/promise_factory.h +4 -0
  840. data/src/core/lib/promise/for_each.h +176 -0
  841. data/src/core/lib/promise/if.h +9 -0
  842. data/src/core/lib/promise/interceptor_list.h +23 -2
  843. data/src/core/lib/promise/latch.h +89 -3
  844. data/src/core/lib/promise/loop.h +13 -9
  845. data/src/core/lib/promise/map.h +7 -0
  846. data/src/core/lib/promise/party.cc +286 -0
  847. data/src/core/lib/promise/party.h +499 -0
  848. data/src/core/lib/promise/pipe.h +204 -57
  849. data/src/core/lib/promise/poll.h +48 -0
  850. data/src/core/lib/promise/promise.h +2 -2
  851. data/src/core/lib/resource_quota/arena.cc +19 -3
  852. data/src/core/lib/resource_quota/arena.h +119 -5
  853. data/src/core/lib/resource_quota/memory_quota.cc +1 -1
  854. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +47 -72
  855. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +1 -0
  856. data/src/core/lib/security/credentials/external/external_account_credentials.cc +60 -62
  857. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +22 -21
  858. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +28 -27
  859. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +4 -61
  860. data/src/core/lib/security/credentials/jwt/json_token.cc +6 -4
  861. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +8 -5
  862. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +39 -38
  863. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +27 -21
  864. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +1 -1
  865. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +13 -0
  866. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +2 -0
  867. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +5 -9
  868. data/src/core/lib/security/security_connector/ssl_utils.cc +11 -25
  869. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +12 -0
  870. data/src/core/lib/security/transport/secure_endpoint.cc +4 -2
  871. data/src/core/lib/security/transport/server_auth_filter.cc +20 -2
  872. data/src/core/lib/security/util/json_util.cc +5 -5
  873. data/src/core/lib/service_config/service_config_impl.cc +11 -5
  874. data/src/core/lib/slice/slice.cc +1 -1
  875. data/src/core/lib/slice/slice.h +2 -0
  876. data/src/core/lib/surface/builtins.cc +2 -0
  877. data/src/core/lib/surface/call.cc +985 -1038
  878. data/src/core/lib/surface/call.h +11 -5
  879. data/src/core/lib/surface/completion_queue.cc +2 -1
  880. data/src/core/lib/surface/lame_client.cc +1 -0
  881. data/src/core/lib/surface/server.cc +47 -19
  882. data/src/core/lib/surface/validate_metadata.cc +43 -42
  883. data/src/core/lib/surface/validate_metadata.h +9 -0
  884. data/src/core/lib/surface/version.cc +2 -2
  885. data/src/core/lib/transport/batch_builder.cc +179 -0
  886. data/src/core/lib/transport/batch_builder.h +476 -0
  887. data/src/core/lib/transport/bdp_estimator.cc +7 -7
  888. data/src/core/lib/transport/bdp_estimator.h +10 -6
  889. data/src/core/lib/transport/custom_metadata.h +30 -0
  890. data/src/core/lib/transport/metadata_batch.cc +9 -6
  891. data/src/core/lib/transport/metadata_batch.h +124 -31
  892. data/src/core/lib/transport/metadata_compression_traits.h +67 -0
  893. data/src/core/lib/transport/parsed_metadata.h +19 -9
  894. data/src/core/lib/transport/simple_slice_based_metadata.h +48 -0
  895. data/src/core/lib/transport/timeout_encoding.cc +6 -1
  896. data/src/core/lib/transport/transport.cc +30 -2
  897. data/src/core/lib/transport/transport.h +73 -14
  898. data/src/core/lib/transport/transport_impl.h +7 -0
  899. data/src/core/lib/transport/transport_op_string.cc +52 -42
  900. data/src/core/plugin_registry/grpc_plugin_registry.cc +4 -6
  901. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +1 -0
  902. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +21 -4
  903. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +5 -0
  904. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +1 -1
  905. data/src/core/tsi/ssl_transport_security.cc +4 -2
  906. data/src/ruby/lib/grpc/version.rb +1 -1
  907. data/third_party/abseil-cpp/absl/base/config.h +1 -1
  908. data/third_party/abseil-cpp/absl/flags/commandlineflag.cc +34 -0
  909. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +200 -0
  910. data/third_party/abseil-cpp/absl/flags/config.h +68 -0
  911. data/third_party/abseil-cpp/absl/flags/declare.h +73 -0
  912. data/third_party/abseil-cpp/absl/flags/flag.cc +38 -0
  913. data/third_party/abseil-cpp/absl/flags/flag.h +310 -0
  914. data/{src/core/lib/gprpp/global_config_custom.h → third_party/abseil-cpp/absl/flags/internal/commandlineflag.cc} +11 -14
  915. data/third_party/abseil-cpp/absl/flags/internal/commandlineflag.h +68 -0
  916. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +615 -0
  917. data/third_party/abseil-cpp/absl/flags/internal/flag.h +800 -0
  918. data/third_party/abseil-cpp/absl/flags/internal/flag_msvc.inc +116 -0
  919. data/third_party/abseil-cpp/absl/flags/internal/path_util.h +62 -0
  920. data/third_party/abseil-cpp/absl/flags/internal/private_handle_accessor.cc +65 -0
  921. data/third_party/abseil-cpp/absl/flags/internal/private_handle_accessor.h +61 -0
  922. data/third_party/abseil-cpp/absl/flags/internal/program_name.cc +60 -0
  923. data/third_party/abseil-cpp/absl/flags/internal/program_name.h +50 -0
  924. data/third_party/abseil-cpp/absl/flags/internal/registry.h +97 -0
  925. data/third_party/abseil-cpp/absl/flags/internal/sequence_lock.h +187 -0
  926. data/third_party/abseil-cpp/absl/flags/marshalling.cc +241 -0
  927. data/third_party/abseil-cpp/absl/flags/marshalling.h +356 -0
  928. data/third_party/abseil-cpp/absl/flags/reflection.cc +354 -0
  929. data/third_party/abseil-cpp/absl/flags/reflection.h +90 -0
  930. data/third_party/abseil-cpp/absl/flags/usage_config.cc +165 -0
  931. data/third_party/abseil-cpp/absl/flags/usage_config.h +135 -0
  932. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +12 -8
  933. data/third_party/boringssl-with-bazel/err_data.c +728 -712
  934. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +177 -177
  935. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +28 -55
  936. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +21 -23
  937. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +20 -23
  938. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +66 -185
  939. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +18 -21
  940. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +356 -311
  941. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +174 -194
  942. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +146 -210
  943. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +6 -9
  944. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +346 -526
  945. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +110 -131
  946. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +130 -116
  947. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +93 -60
  948. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +93 -181
  949. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +242 -305
  950. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +41 -18
  951. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +30 -33
  952. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +36 -33
  953. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +29 -26
  954. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +133 -88
  955. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +230 -0
  956. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +791 -791
  957. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +526 -526
  958. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +114 -135
  959. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +201 -207
  960. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +21 -26
  961. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +55 -68
  962. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +2 -4
  963. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +11 -7
  964. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +37 -51
  965. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +15 -9
  966. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +11 -8
  967. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +17 -10
  968. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +1 -3
  969. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +0 -13
  970. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +3 -6
  971. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +2 -0
  972. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +9 -5
  973. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +10 -23
  974. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +2 -6
  975. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +2 -1
  976. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +29 -28
  977. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +161 -201
  978. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +254 -39
  979. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +2 -2
  980. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +0 -2
  981. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +4 -4
  982. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +9 -8
  983. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +37 -75
  984. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +8 -10
  985. data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/cipher → cipher_extra}/e_des.c +100 -78
  986. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +1 -0
  987. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +1 -0
  988. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +2 -0
  989. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +6 -12
  990. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +14 -11
  991. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +6 -10
  992. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -1
  993. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +12 -0
  994. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +74 -0
  995. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_freebsd.c +62 -0
  996. data/third_party/boringssl-with-bazel/src/crypto/{cpu-aarch64-fuchsia.c → cpu_aarch64_fuchsia.c} +8 -7
  997. data/third_party/boringssl-with-bazel/src/crypto/{cpu-aarch64-linux.c → cpu_aarch64_linux.c} +6 -4
  998. data/third_party/boringssl-with-bazel/src/crypto/{cpu-aarch64-win.c → cpu_aarch64_win.c} +4 -4
  999. data/third_party/boringssl-with-bazel/src/crypto/{cpu-arm.c → cpu_arm.c} +1 -1
  1000. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +55 -0
  1001. data/third_party/boringssl-with-bazel/src/crypto/{cpu-arm-linux.c → cpu_arm_linux.c} +11 -90
  1002. data/third_party/boringssl-with-bazel/src/crypto/{cpu-arm-linux.h → cpu_arm_linux.h} +0 -38
  1003. data/third_party/boringssl-with-bazel/src/crypto/{cpu-intel.c → cpu_intel.c} +1 -2
  1004. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +25 -20
  1005. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +16 -27
  1006. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +17 -32
  1007. data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/des → des}/des.c +232 -232
  1008. data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/des → des}/internal.h +1 -1
  1009. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +1 -0
  1010. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +232 -29
  1011. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +0 -3
  1012. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +39 -16
  1013. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +37 -7
  1014. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +3 -3
  1015. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +11 -36
  1016. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +214 -99
  1017. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +21 -5
  1018. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +2 -4
  1019. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +83 -60
  1020. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +46 -12
  1021. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +3 -3
  1022. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +25 -23
  1023. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +43 -9
  1024. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +75 -44
  1025. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +19 -25
  1026. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +96 -45
  1027. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +7 -8
  1028. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +26 -23
  1029. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.c +233 -0
  1030. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +5 -5
  1031. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +42 -25
  1032. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +4 -5
  1033. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +35 -47
  1034. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +135 -244
  1035. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +2 -4
  1036. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +15 -10
  1037. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +29 -15
  1038. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c +0 -2
  1039. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c +13 -14
  1040. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +3 -13
  1041. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c +13 -7
  1042. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +9 -7
  1043. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +35 -27
  1044. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c +16 -26
  1045. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +88 -60
  1046. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c +4 -3
  1047. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c +0 -2
  1048. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +1 -1
  1049. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +1 -1
  1050. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +99 -113
  1051. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +0 -1
  1052. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +5 -3
  1053. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c +112 -168
  1054. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +86 -31
  1055. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +11 -6
  1056. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +4 -5
  1057. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +4 -5
  1058. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +13 -0
  1059. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +13 -5
  1060. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +19 -108
  1061. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +19 -15
  1062. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c +15 -16
  1063. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +22 -21
  1064. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c +3 -0
  1065. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +79 -19
  1066. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +102 -99
  1067. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → fipsmodule/cipher}/e_aesccm.c +52 -46
  1068. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +39 -0
  1069. data/third_party/boringssl-with-bazel/src/crypto/{cmac → fipsmodule/cmac}/cmac.c +55 -11
  1070. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +2 -3
  1071. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +21 -6
  1072. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +56 -0
  1073. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +5 -3
  1074. data/third_party/boringssl-with-bazel/src/crypto/{evp → fipsmodule/digestsign}/digestsign.c +51 -15
  1075. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +25 -25
  1076. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +91 -17
  1077. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +5 -5
  1078. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +34 -12
  1079. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +54 -23
  1080. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +44 -60
  1081. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{p256-x86_64-table.h → p256-nistz-table.h} +1 -1
  1082. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{p256-x86_64.c → p256-nistz.c} +60 -53
  1083. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{p256-x86_64.h → p256-nistz.h} +5 -13
  1084. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +48 -36
  1085. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +2 -8
  1086. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +2 -7
  1087. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +2 -3
  1088. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +0 -1
  1089. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +8 -0
  1090. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +42 -14
  1091. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +6 -0
  1092. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c +52 -24
  1093. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +9 -15
  1094. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +1 -4
  1095. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +2 -4
  1096. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +71 -43
  1097. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +14 -16
  1098. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +1 -4
  1099. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c +31 -13
  1100. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +16 -8
  1101. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +3 -2
  1102. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/getrandom_fillin.h +2 -2
  1103. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +9 -38
  1104. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +73 -59
  1105. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +11 -45
  1106. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c +0 -1
  1107. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +22 -0
  1108. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +63 -52
  1109. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +107 -62
  1110. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +58 -31
  1111. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +41 -0
  1112. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +523 -422
  1113. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +89 -0
  1114. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +334 -0
  1115. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +3 -12
  1116. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +2 -0
  1117. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +12 -8
  1118. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +14 -12
  1119. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +19 -6
  1120. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +32 -14
  1121. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +65 -29
  1122. data/third_party/boringssl-with-bazel/src/crypto/internal.h +373 -18
  1123. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +91 -0
  1124. data/third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c +204 -0
  1125. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +826 -0
  1126. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +13 -1
  1127. data/third_party/boringssl-with-bazel/src/crypto/mem.c +220 -13
  1128. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +19 -7
  1129. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +13 -1
  1130. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +81 -90
  1131. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +150 -245
  1132. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +629 -613
  1133. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +17 -17
  1134. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +142 -149
  1135. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +99 -131
  1136. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +0 -1
  1137. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +0 -1
  1138. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +0 -1
  1139. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +0 -3
  1140. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +36 -66
  1141. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +31 -38
  1142. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +2 -1
  1143. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +18 -31
  1144. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +1 -0
  1145. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +8 -1
  1146. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +129 -5
  1147. data/third_party/boringssl-with-bazel/src/crypto/refcount_c11.c +0 -2
  1148. data/third_party/boringssl-with-bazel/src/crypto/refcount_lock.c +3 -4
  1149. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +8 -11
  1150. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +61 -27
  1151. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +10 -13
  1152. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +10 -13
  1153. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +66 -34
  1154. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +200 -89
  1155. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +81 -284
  1156. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +117 -52
  1157. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +22 -24
  1158. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +54 -55
  1159. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +32 -34
  1160. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +32 -16
  1161. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +465 -704
  1162. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +285 -331
  1163. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +183 -178
  1164. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +11 -15
  1165. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +68 -50
  1166. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +153 -150
  1167. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +790 -0
  1168. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +95 -102
  1169. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +72 -57
  1170. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +12 -10
  1171. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +227 -252
  1172. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +52 -47
  1173. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +3 -4
  1174. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +230 -224
  1175. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +161 -327
  1176. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +37 -33
  1177. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +14 -31
  1178. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +55 -85
  1179. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +528 -616
  1180. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +129 -122
  1181. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +116 -182
  1182. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +132 -132
  1183. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +186 -203
  1184. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +64 -79
  1185. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +175 -160
  1186. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +1864 -2050
  1187. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +380 -480
  1188. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +156 -163
  1189. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +267 -263
  1190. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +40 -15
  1191. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +59 -63
  1192. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +63 -67
  1193. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +114 -144
  1194. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +25 -26
  1195. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +329 -416
  1196. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +8 -7
  1197. data/third_party/boringssl-with-bazel/src/crypto/x509/x_info.c +30 -28
  1198. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +354 -370
  1199. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c +37 -32
  1200. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +116 -119
  1201. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +36 -26
  1202. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +3 -4
  1203. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +10 -13
  1204. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +3 -4
  1205. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +419 -261
  1206. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +113 -105
  1207. data/third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h +11 -15
  1208. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +78 -170
  1209. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c +126 -131
  1210. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c +3 -4
  1211. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +465 -469
  1212. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c +56 -54
  1213. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c +46 -49
  1214. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +309 -346
  1215. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +341 -365
  1216. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c +429 -393
  1217. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c +29 -24
  1218. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c +65 -59
  1219. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +125 -121
  1220. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c +43 -42
  1221. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +122 -125
  1222. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c +50 -20
  1223. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +249 -254
  1224. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c +386 -389
  1225. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c +45 -32
  1226. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c +57 -54
  1227. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c +63 -67
  1228. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +143 -136
  1229. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +652 -691
  1230. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +83 -75
  1231. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +1063 -1145
  1232. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +8 -4
  1233. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +28 -48
  1234. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +211 -187
  1235. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +26 -78
  1236. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +19 -14
  1237. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +29 -10
  1238. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +49 -17
  1239. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +99 -29
  1240. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +49 -60
  1241. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +2 -15
  1242. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +16 -200
  1243. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +34 -0
  1244. data/third_party/boringssl-with-bazel/src/include/openssl/ctrdrbg.h +82 -0
  1245. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +32 -30
  1246. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +7 -0
  1247. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +4 -0
  1248. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +48 -5
  1249. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +37 -8
  1250. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +1 -0
  1251. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +33 -5
  1252. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +22 -30
  1253. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +1 -1
  1254. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +7 -0
  1255. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +41 -16
  1256. data/third_party/boringssl-with-bazel/src/include/openssl/kdf.h +91 -0
  1257. data/third_party/boringssl-with-bazel/src/include/openssl/kyber.h +128 -0
  1258. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +74 -8
  1259. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +13 -0
  1260. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +8 -1
  1261. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +1 -0
  1262. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +11 -15
  1263. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +8 -0
  1264. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +12 -1
  1265. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +7 -4
  1266. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +96 -0
  1267. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +13 -21
  1268. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +139 -75
  1269. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +1 -6
  1270. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +381 -287
  1271. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +5 -6
  1272. data/third_party/boringssl-with-bazel/src/include/openssl/time.h +41 -0
  1273. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +18 -7
  1274. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +49 -23
  1275. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +0 -11
  1276. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +1635 -1126
  1277. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +202 -205
  1278. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +2 -2
  1279. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +6 -13
  1280. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +17 -18
  1281. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +4 -5
  1282. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +25 -33
  1283. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +34 -20
  1284. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +65 -34
  1285. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +198 -54
  1286. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +5 -5
  1287. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +41 -30
  1288. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +76 -44
  1289. data/third_party/boringssl-with-bazel/src/ssl/internal.h +147 -115
  1290. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +27 -11
  1291. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +2 -2
  1292. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +91 -75
  1293. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +8 -10
  1294. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +47 -69
  1295. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +1 -0
  1296. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +5 -9
  1297. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +30 -33
  1298. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +78 -101
  1299. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +187 -107
  1300. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +164 -30
  1301. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +150 -60
  1302. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +41 -32
  1303. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +22 -6
  1304. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +15 -13
  1305. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +7 -44
  1306. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +7 -4
  1307. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +2 -2
  1308. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +22 -34
  1309. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +2 -2
  1310. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +16 -98
  1311. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +1241 -657
  1312. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +751 -398
  1313. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +3551 -1938
  1314. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +1272 -487
  1315. data/third_party/upb/upb/{table_internal.h → alloc.h} +6 -6
  1316. data/third_party/upb/upb/arena.h +4 -193
  1317. data/third_party/upb/upb/array.h +4 -51
  1318. data/third_party/upb/upb/base/descriptor_constants.h +104 -0
  1319. data/third_party/upb/upb/base/log2.h +57 -0
  1320. data/third_party/upb/upb/{status.c → base/status.c} +2 -7
  1321. data/third_party/upb/upb/base/status.h +66 -0
  1322. data/third_party/upb/upb/base/string_view.h +75 -0
  1323. data/third_party/upb/upb/{array.c → collections/array.c} +67 -36
  1324. data/third_party/upb/upb/collections/array.h +85 -0
  1325. data/third_party/upb/upb/collections/array_internal.h +135 -0
  1326. data/third_party/upb/upb/{map.c → collections/map.c} +53 -26
  1327. data/third_party/upb/upb/collections/map.h +135 -0
  1328. data/third_party/upb/upb/collections/map_gencode_util.h +78 -0
  1329. data/third_party/upb/upb/collections/map_internal.h +170 -0
  1330. data/third_party/upb/upb/collections/map_sorter.c +166 -0
  1331. data/third_party/upb/upb/collections/map_sorter_internal.h +109 -0
  1332. data/third_party/upb/upb/{message_value.h → collections/message_value.h} +12 -13
  1333. data/third_party/upb/upb/decode.h +3 -62
  1334. data/third_party/upb/upb/def.h +4 -384
  1335. data/third_party/upb/upb/def.hpp +3 -411
  1336. data/third_party/upb/upb/encode.h +3 -48
  1337. data/third_party/upb/upb/extension_registry.h +3 -52
  1338. data/third_party/upb/upb/{table.c → hash/common.c} +52 -110
  1339. data/third_party/upb/upb/hash/common.h +199 -0
  1340. data/third_party/upb/upb/hash/int_table.h +102 -0
  1341. data/third_party/upb/upb/hash/str_table.h +161 -0
  1342. data/third_party/upb/upb/{json_decode.c → json/decode.c} +63 -98
  1343. data/third_party/upb/upb/json/decode.h +52 -0
  1344. data/third_party/upb/upb/{json_encode.c → json/encode.c} +69 -45
  1345. data/third_party/upb/upb/json/encode.h +70 -0
  1346. data/third_party/upb/upb/json_decode.h +4 -15
  1347. data/third_party/upb/upb/json_encode.h +4 -33
  1348. data/third_party/upb/upb/lex/atoi.c +68 -0
  1349. data/third_party/upb/upb/lex/atoi.h +53 -0
  1350. data/third_party/upb/upb/{upb.c → lex/round_trip.c} +2 -11
  1351. data/third_party/upb/upb/{internal/upb.h → lex/round_trip.h} +17 -30
  1352. data/third_party/upb/upb/lex/strtod.c +97 -0
  1353. data/third_party/upb/upb/lex/strtod.h +46 -0
  1354. data/third_party/upb/upb/lex/unicode.c +57 -0
  1355. data/third_party/upb/upb/lex/unicode.h +77 -0
  1356. data/third_party/upb/upb/map.h +4 -85
  1357. data/third_party/upb/upb/mem/alloc.c +47 -0
  1358. data/third_party/upb/upb/mem/alloc.h +98 -0
  1359. data/third_party/upb/upb/mem/arena.c +367 -0
  1360. data/third_party/upb/upb/mem/arena.h +160 -0
  1361. data/third_party/upb/upb/mem/arena_internal.h +114 -0
  1362. data/third_party/upb/upb/message/accessors.c +68 -0
  1363. data/third_party/upb/upb/message/accessors.h +379 -0
  1364. data/third_party/upb/upb/message/accessors_internal.h +325 -0
  1365. data/third_party/upb/upb/message/extension_internal.h +83 -0
  1366. data/third_party/upb/upb/message/internal.h +135 -0
  1367. data/third_party/upb/upb/message/message.c +180 -0
  1368. data/third_party/upb/upb/message/message.h +69 -0
  1369. data/third_party/upb/upb/mini_table/common.c +128 -0
  1370. data/third_party/upb/upb/mini_table/common.h +170 -0
  1371. data/third_party/upb/upb/mini_table/common_internal.h +111 -0
  1372. data/third_party/upb/upb/{mini_table.c → mini_table/decode.c} +513 -533
  1373. data/third_party/upb/upb/mini_table/decode.h +179 -0
  1374. data/third_party/upb/upb/mini_table/encode.c +300 -0
  1375. data/third_party/upb/upb/mini_table/encode_internal.h +111 -0
  1376. data/third_party/upb/upb/{mini_table.hpp → mini_table/encode_internal.hpp} +32 -8
  1377. data/third_party/upb/upb/mini_table/enum_internal.h +88 -0
  1378. data/third_party/upb/upb/mini_table/extension_internal.h +47 -0
  1379. data/third_party/upb/upb/{extension_registry.c → mini_table/extension_registry.c} +27 -24
  1380. data/third_party/upb/upb/mini_table/extension_registry.h +104 -0
  1381. data/third_party/upb/upb/mini_table/field_internal.h +192 -0
  1382. data/third_party/upb/upb/mini_table/file_internal.h +47 -0
  1383. data/third_party/upb/upb/mini_table/message_internal.h +136 -0
  1384. data/third_party/upb/upb/mini_table/sub_internal.h +38 -0
  1385. data/third_party/upb/upb/mini_table/types.h +40 -0
  1386. data/third_party/upb/upb/mini_table.h +4 -157
  1387. data/third_party/upb/upb/msg.h +3 -38
  1388. data/third_party/upb/upb/port/atomic.h +101 -0
  1389. data/third_party/upb/upb/{port_def.inc → port/def.inc} +94 -27
  1390. data/third_party/upb/upb/{port_undef.inc → port/undef.inc} +13 -3
  1391. data/third_party/upb/upb/{internal → port}/vsnprintf_compat.h +5 -7
  1392. data/third_party/upb/upb/reflection/common.h +67 -0
  1393. data/third_party/upb/upb/reflection/def.h +42 -0
  1394. data/third_party/upb/upb/reflection/def.hpp +610 -0
  1395. data/third_party/upb/upb/reflection/def_builder.c +357 -0
  1396. data/third_party/upb/upb/reflection/def_builder_internal.h +157 -0
  1397. data/third_party/upb/upb/reflection/def_pool.c +462 -0
  1398. data/third_party/upb/upb/reflection/def_pool.h +108 -0
  1399. data/third_party/upb/upb/reflection/def_pool_internal.h +77 -0
  1400. data/third_party/upb/upb/reflection/def_type.c +50 -0
  1401. data/third_party/upb/upb/reflection/def_type.h +81 -0
  1402. data/third_party/upb/upb/reflection/desc_state.c +53 -0
  1403. data/third_party/upb/upb/reflection/desc_state_internal.h +64 -0
  1404. data/third_party/upb/upb/reflection/enum_def.c +310 -0
  1405. data/third_party/upb/upb/reflection/enum_def.h +80 -0
  1406. data/third_party/upb/upb/reflection/enum_def_internal.h +56 -0
  1407. data/third_party/upb/upb/reflection/enum_reserved_range.c +84 -0
  1408. data/third_party/upb/upb/reflection/enum_reserved_range.h +51 -0
  1409. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +55 -0
  1410. data/third_party/upb/upb/reflection/enum_value_def.c +144 -0
  1411. data/third_party/upb/upb/reflection/enum_value_def.h +57 -0
  1412. data/third_party/upb/upb/reflection/enum_value_def_internal.h +57 -0
  1413. data/third_party/upb/upb/reflection/extension_range.c +93 -0
  1414. data/third_party/upb/upb/reflection/extension_range.h +55 -0
  1415. data/third_party/upb/upb/reflection/extension_range_internal.h +54 -0
  1416. data/third_party/upb/upb/reflection/field_def.c +930 -0
  1417. data/third_party/upb/upb/reflection/field_def.h +91 -0
  1418. data/third_party/upb/upb/reflection/field_def_internal.h +76 -0
  1419. data/third_party/upb/upb/reflection/file_def.c +370 -0
  1420. data/third_party/upb/upb/reflection/file_def.h +77 -0
  1421. data/third_party/upb/upb/reflection/file_def_internal.h +57 -0
  1422. data/third_party/upb/upb/reflection/message.c +233 -0
  1423. data/third_party/upb/upb/reflection/message.h +102 -0
  1424. data/third_party/upb/upb/reflection/message.hpp +37 -0
  1425. data/third_party/upb/upb/reflection/message_def.c +718 -0
  1426. data/third_party/upb/upb/reflection/message_def.h +174 -0
  1427. data/third_party/upb/upb/reflection/message_def_internal.h +63 -0
  1428. data/third_party/upb/upb/reflection/message_reserved_range.c +81 -0
  1429. data/third_party/upb/upb/reflection/message_reserved_range.h +51 -0
  1430. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +55 -0
  1431. data/third_party/upb/upb/reflection/method_def.c +124 -0
  1432. data/third_party/upb/upb/reflection/method_def.h +59 -0
  1433. data/third_party/upb/upb/reflection/method_def_internal.h +53 -0
  1434. data/third_party/upb/upb/reflection/oneof_def.c +226 -0
  1435. data/third_party/upb/upb/reflection/oneof_def.h +66 -0
  1436. data/third_party/upb/upb/reflection/oneof_def_internal.h +57 -0
  1437. data/third_party/upb/upb/reflection/service_def.c +128 -0
  1438. data/third_party/upb/upb/reflection/service_def.h +60 -0
  1439. data/third_party/upb/upb/reflection/service_def_internal.h +53 -0
  1440. data/third_party/upb/upb/reflection.h +4 -78
  1441. data/third_party/upb/upb/reflection.hpp +3 -7
  1442. data/third_party/upb/upb/status.h +4 -34
  1443. data/third_party/upb/upb/{collections.h → string_view.h} +7 -7
  1444. data/third_party/upb/upb/{text_encode.c → text/encode.c} +74 -70
  1445. data/third_party/upb/upb/text/encode.h +69 -0
  1446. data/third_party/upb/upb/text_encode.h +4 -32
  1447. data/third_party/upb/upb/upb.h +6 -151
  1448. data/third_party/upb/upb/upb.hpp +10 -18
  1449. data/third_party/upb/upb/wire/common.h +44 -0
  1450. data/third_party/upb/upb/wire/common_internal.h +50 -0
  1451. data/third_party/upb/upb/wire/decode.c +1343 -0
  1452. data/third_party/upb/upb/wire/decode.h +108 -0
  1453. data/third_party/upb/upb/{decode_fast.c → wire/decode_fast.c} +184 -225
  1454. data/third_party/upb/upb/{decode_fast.h → wire/decode_fast.h} +21 -7
  1455. data/third_party/upb/upb/{internal/decode.h → wire/decode_internal.h} +44 -92
  1456. data/third_party/upb/upb/{encode.c → wire/encode.c} +114 -95
  1457. data/third_party/upb/upb/wire/encode.h +92 -0
  1458. data/third_party/upb/upb/wire/eps_copy_input_stream.c +39 -0
  1459. data/third_party/upb/upb/wire/eps_copy_input_stream.h +425 -0
  1460. data/third_party/upb/upb/wire/reader.c +67 -0
  1461. data/third_party/upb/upb/wire/reader.h +227 -0
  1462. data/third_party/upb/upb/wire/swap_internal.h +63 -0
  1463. data/third_party/upb/upb/wire/types.h +41 -0
  1464. data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-neon.c +1 -1
  1465. data/third_party/{upb/third_party/utf8_range → utf8_range}/utf8_range.h +12 -0
  1466. metadata +257 -107
  1467. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +0 -30
  1468. data/src/core/ext/transport/chttp2/transport/context_list.cc +0 -71
  1469. data/src/core/ext/transport/chttp2/transport/context_list.h +0 -54
  1470. data/src/core/lib/gprpp/global_config.h +0 -93
  1471. data/src/core/lib/gprpp/global_config_env.cc +0 -140
  1472. data/src/core/lib/gprpp/global_config_env.h +0 -133
  1473. data/src/core/lib/gprpp/global_config_generic.h +0 -40
  1474. data/src/core/lib/promise/intra_activity_waiter.h +0 -55
  1475. data/src/core/lib/security/security_connector/ssl_utils_config.cc +0 -32
  1476. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_enum.c +0 -195
  1477. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c +0 -83
  1478. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utf8.c +0 -236
  1479. data/third_party/boringssl-with-bazel/src/crypto/asn1/charmap.h +0 -15
  1480. data/third_party/boringssl-with-bazel/src/crypto/asn1/time_support.c +0 -206
  1481. data/third_party/boringssl-with-bazel/src/crypto/cpu-ppc64le.c +0 -38
  1482. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1-altivec.c +0 -361
  1483. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +0 -287
  1484. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +0 -132
  1485. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +0 -155
  1486. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +0 -131
  1487. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +0 -189
  1488. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +0 -843
  1489. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pci.c +0 -289
  1490. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcia.c +0 -57
  1491. data/third_party/upb/upb/arena.c +0 -277
  1492. data/third_party/upb/upb/decode.c +0 -1221
  1493. data/third_party/upb/upb/def.c +0 -3269
  1494. data/third_party/upb/upb/internal/table.h +0 -385
  1495. data/third_party/upb/upb/msg.c +0 -368
  1496. data/third_party/upb/upb/msg_internal.h +0 -837
  1497. data/third_party/upb/upb/reflection.c +0 -323
  1498. /data/src/core/lib/gpr/{log_android.cc → android/log.cc} +0 -0
  1499. /data/src/core/lib/gpr/{cpu_iphone.cc → iphone/cpu.cc} +0 -0
  1500. /data/src/core/lib/gpr/{cpu_linux.cc → linux/cpu.cc} +0 -0
  1501. /data/src/core/lib/gpr/{log_linux.cc → linux/log.cc} +0 -0
  1502. /data/src/core/lib/gpr/{tmpfile_msys.cc → msys/tmpfile.cc} +0 -0
  1503. /data/src/core/lib/gpr/{cpu_posix.cc → posix/cpu.cc} +0 -0
  1504. /data/src/core/lib/gpr/{log_posix.cc → posix/log.cc} +0 -0
  1505. /data/src/core/lib/gpr/{string_posix.cc → posix/string.cc} +0 -0
  1506. /data/src/core/lib/gpr/{sync_posix.cc → posix/sync.cc} +0 -0
  1507. /data/src/core/lib/gpr/{tmpfile_posix.cc → posix/tmpfile.cc} +0 -0
  1508. /data/src/core/lib/gpr/{cpu_windows.cc → windows/cpu.cc} +0 -0
  1509. /data/src/core/lib/gpr/{log_windows.cc → windows/log.cc} +0 -0
  1510. /data/src/core/lib/gpr/{string_windows.cc → windows/string.cc} +0 -0
  1511. /data/src/core/lib/gpr/{string_util_windows.cc → windows/string_util.cc} +0 -0
  1512. /data/src/core/lib/gpr/{sync_windows.cc → windows/sync.cc} +0 -0
  1513. /data/src/core/lib/gpr/{time_windows.cc → windows/time.cc} +0 -0
  1514. /data/src/core/lib/gpr/{tmpfile_windows.cc → windows/tmpfile.cc} +0 -0
  1515. /data/src/core/lib/gprpp/{env_linux.cc → linux/env.cc} +0 -0
  1516. /data/src/core/lib/gprpp/{env_posix.cc → posix/env.cc} +0 -0
  1517. /data/src/core/lib/gprpp/{stat_posix.cc → posix/stat.cc} +0 -0
  1518. /data/src/core/lib/gprpp/{env_windows.cc → windows/env.cc} +0 -0
  1519. /data/src/core/lib/gprpp/{stat_windows.cc → windows/stat.cc} +0 -0
  1520. /data/third_party/{upb/third_party/utf8_range → utf8_range}/naive.c +0 -0
  1521. /data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-sse.c +0 -0
@@ -18,6 +18,7 @@
18
18
  #include <openssl/base.h>
19
19
 
20
20
  #include <openssl/span.h>
21
+ #include <time.h>
21
22
 
22
23
  #if defined(__cplusplus)
23
24
  extern "C" {
@@ -159,6 +160,13 @@ OPENSSL_EXPORT int CBS_get_u24_length_prefixed(CBS *cbs, CBS *out);
159
160
  // one. Otherwise, it returns zero and leaves |cbs| unmodified.
160
161
  OPENSSL_EXPORT int CBS_get_until_first(CBS *cbs, CBS *out, uint8_t c);
161
162
 
163
+ // CBS_get_u64_decimal reads a decimal integer from |cbs| and writes it to
164
+ // |*out|. It stops reading at the end of the string, or the first non-digit
165
+ // character. It returns one on success and zero on error. This function behaves
166
+ // analogously to |strtoul| except it does not accept empty inputs, leading
167
+ // zeros, or negative values.
168
+ OPENSSL_EXPORT int CBS_get_u64_decimal(CBS *cbs, uint64_t *out);
169
+
162
170
 
163
171
  // Parsing ASN.1
164
172
  //
@@ -168,8 +176,8 @@ OPENSSL_EXPORT int CBS_get_until_first(CBS *cbs, CBS *out, uint8_t c);
168
176
  // SEQUENCE, branching on CHOICEs or OPTIONAL fields, checking for trailing
169
177
  // data, and handling explict vs. implicit tagging.
170
178
  //
171
- // Tags are represented as |unsigned| values in memory. The upper few bits store
172
- // the class and constructed bit, and the remaining bits store the tag
179
+ // Tags are represented as |CBS_ASN1_TAG| values in memory. The upper few bits
180
+ // store the class and constructed bit, and the remaining bits store the tag
173
181
  // number. Note this differs from the DER serialization, to support tag numbers
174
182
  // beyond 31. Consumers must use the constants defined below to decompose or
175
183
  // assemble tags.
@@ -230,44 +238,52 @@ OPENSSL_EXPORT int CBS_get_until_first(CBS *cbs, CBS *out, uint8_t c);
230
238
  // including tag and length bytes) and advances |cbs| over it. The ASN.1
231
239
  // element must match |tag_value|. It returns one on success and zero
232
240
  // on error.
233
- OPENSSL_EXPORT int CBS_get_asn1(CBS *cbs, CBS *out, unsigned tag_value);
241
+ OPENSSL_EXPORT int CBS_get_asn1(CBS *cbs, CBS *out, CBS_ASN1_TAG tag_value);
234
242
 
235
243
  // CBS_get_asn1_element acts like |CBS_get_asn1| but |out| will include the
236
244
  // ASN.1 header bytes too.
237
- OPENSSL_EXPORT int CBS_get_asn1_element(CBS *cbs, CBS *out, unsigned tag_value);
245
+ OPENSSL_EXPORT int CBS_get_asn1_element(CBS *cbs, CBS *out,
246
+ CBS_ASN1_TAG tag_value);
238
247
 
239
248
  // CBS_peek_asn1_tag looks ahead at the next ASN.1 tag and returns one
240
249
  // if the next ASN.1 element on |cbs| would have tag |tag_value|. If
241
250
  // |cbs| is empty or the tag does not match, it returns zero. Note: if
242
251
  // it returns one, CBS_get_asn1 may still fail if the rest of the
243
252
  // element is malformed.
244
- OPENSSL_EXPORT int CBS_peek_asn1_tag(const CBS *cbs, unsigned tag_value);
253
+ OPENSSL_EXPORT int CBS_peek_asn1_tag(const CBS *cbs, CBS_ASN1_TAG tag_value);
245
254
 
246
255
  // CBS_get_any_asn1 sets |*out| to contain the next ASN.1 element from |*cbs|
247
256
  // (not including tag and length bytes), sets |*out_tag| to the tag number, and
248
257
  // advances |*cbs|. It returns one on success and zero on error. Either of |out|
249
258
  // and |out_tag| may be NULL to ignore the value.
250
- OPENSSL_EXPORT int CBS_get_any_asn1(CBS *cbs, CBS *out, unsigned *out_tag);
259
+ OPENSSL_EXPORT int CBS_get_any_asn1(CBS *cbs, CBS *out,
260
+ CBS_ASN1_TAG *out_tag);
251
261
 
252
262
  // CBS_get_any_asn1_element sets |*out| to contain the next ASN.1 element from
253
263
  // |*cbs| (including header bytes) and advances |*cbs|. It sets |*out_tag| to
254
264
  // the tag number and |*out_header_len| to the length of the ASN.1 header. Each
255
265
  // of |out|, |out_tag|, and |out_header_len| may be NULL to ignore the value.
256
266
  OPENSSL_EXPORT int CBS_get_any_asn1_element(CBS *cbs, CBS *out,
257
- unsigned *out_tag,
267
+ CBS_ASN1_TAG *out_tag,
258
268
  size_t *out_header_len);
259
269
 
260
270
  // CBS_get_any_ber_asn1_element acts the same as |CBS_get_any_asn1_element| but
261
271
  // also allows indefinite-length elements to be returned and does not enforce
262
- // that lengths are minimal. For indefinite-lengths, |*out_header_len| and
272
+ // that lengths are minimal. It sets |*out_indefinite| to one if the length was
273
+ // indefinite and zero otherwise. If indefinite, |*out_header_len| and
263
274
  // |CBS_len(out)| will be equal as only the header is returned (although this is
264
- // also true for empty elements so the length must be checked too). If
275
+ // also true for empty elements so |*out_indefinite| should be checked). If
265
276
  // |out_ber_found| is not NULL then it is set to one if any case of invalid DER
266
277
  // but valid BER is found, and to zero otherwise.
278
+ //
279
+ // This function will not successfully parse an end-of-contents (EOC) as an
280
+ // element. Callers parsing indefinite-length encoding must check for EOC
281
+ // separately.
267
282
  OPENSSL_EXPORT int CBS_get_any_ber_asn1_element(CBS *cbs, CBS *out,
268
- unsigned *out_tag,
283
+ CBS_ASN1_TAG *out_tag,
269
284
  size_t *out_header_len,
270
- int *out_ber_found);
285
+ int *out_ber_found,
286
+ int *out_indefinite);
271
287
 
272
288
  // CBS_get_asn1_uint64 gets an ASN.1 INTEGER from |cbs| using |CBS_get_asn1|
273
289
  // and sets |*out| to its value. It returns one on success and zero on error,
@@ -290,7 +306,7 @@ OPENSSL_EXPORT int CBS_get_asn1_bool(CBS *cbs, int *out);
290
306
  // one, otherwise zero. It returns one on success, whether or not the element
291
307
  // was present, and zero on decode failure.
292
308
  OPENSSL_EXPORT int CBS_get_optional_asn1(CBS *cbs, CBS *out, int *out_present,
293
- unsigned tag);
309
+ CBS_ASN1_TAG tag);
294
310
 
295
311
  // CBS_get_optional_asn1_octet_string gets an optional
296
312
  // explicitly-tagged OCTET STRING from |cbs|. If present, it sets
@@ -300,7 +316,7 @@ OPENSSL_EXPORT int CBS_get_optional_asn1(CBS *cbs, CBS *out, int *out_present,
300
316
  // present, and zero on decode failure.
301
317
  OPENSSL_EXPORT int CBS_get_optional_asn1_octet_string(CBS *cbs, CBS *out,
302
318
  int *out_present,
303
- unsigned tag);
319
+ CBS_ASN1_TAG tag);
304
320
 
305
321
  // CBS_get_optional_asn1_uint64 gets an optional explicitly-tagged
306
322
  // INTEGER from |cbs|. If present, it sets |*out| to the
@@ -308,7 +324,7 @@ OPENSSL_EXPORT int CBS_get_optional_asn1_octet_string(CBS *cbs, CBS *out,
308
324
  // on success, whether or not the element was present, and zero on
309
325
  // decode failure.
310
326
  OPENSSL_EXPORT int CBS_get_optional_asn1_uint64(CBS *cbs, uint64_t *out,
311
- unsigned tag,
327
+ CBS_ASN1_TAG tag,
312
328
  uint64_t default_value);
313
329
 
314
330
  // CBS_get_optional_asn1_bool gets an optional, explicitly-tagged BOOLEAN from
@@ -316,7 +332,8 @@ OPENSSL_EXPORT int CBS_get_optional_asn1_uint64(CBS *cbs, uint64_t *out,
316
332
  // boolean. Otherwise, it sets |*out| to |default_value|. It returns one on
317
333
  // success, whether or not the element was present, and zero on decode
318
334
  // failure.
319
- OPENSSL_EXPORT int CBS_get_optional_asn1_bool(CBS *cbs, int *out, unsigned tag,
335
+ OPENSSL_EXPORT int CBS_get_optional_asn1_bool(CBS *cbs, int *out,
336
+ CBS_ASN1_TAG tag,
320
337
  int default_value);
321
338
 
322
339
  // CBS_is_valid_asn1_bitstring returns one if |cbs| is a valid ASN.1 BIT STRING
@@ -339,14 +356,42 @@ OPENSSL_EXPORT int CBS_is_valid_asn1_integer(const CBS *cbs,
339
356
  // ASN.1 INTEGER body and zero otherwise.
340
357
  OPENSSL_EXPORT int CBS_is_unsigned_asn1_integer(const CBS *cbs);
341
358
 
359
+ // CBS_is_valid_asn1_oid returns one if |cbs| is a valid DER-encoded ASN.1
360
+ // OBJECT IDENTIFIER contents (not including the element framing) and zero
361
+ // otherwise. This function tolerates arbitrarily large OID components.
362
+ OPENSSL_EXPORT int CBS_is_valid_asn1_oid(const CBS *cbs);
363
+
342
364
  // CBS_asn1_oid_to_text interprets |cbs| as DER-encoded ASN.1 OBJECT IDENTIFIER
343
365
  // contents (not including the element framing) and returns the ASCII
344
366
  // representation (e.g., "1.2.840.113554.4.1.72585") in a newly-allocated
345
367
  // string, or NULL on failure. The caller must release the result with
346
368
  // |OPENSSL_free|.
369
+ //
370
+ // This function may fail if |cbs| is an invalid OBJECT IDENTIFIER, or if any
371
+ // OID components are too large.
347
372
  OPENSSL_EXPORT char *CBS_asn1_oid_to_text(const CBS *cbs);
348
373
 
349
374
 
375
+ // CBS_parse_generalized_time returns one if |cbs| is a valid DER-encoded, ASN.1
376
+ // GeneralizedTime body within the limitations imposed by RFC 5280, or zero
377
+ // otherwise. If |allow_timezone_offset| is non-zero, four-digit timezone
378
+ // offsets, which would not be allowed by DER, are permitted. On success, if
379
+ // |out_tm| is non-NULL, |*out_tm| will be zeroed, and then set to the
380
+ // corresponding time in UTC. This function does not compute |out_tm->tm_wday|
381
+ // or |out_tm->tm_yday|.
382
+ OPENSSL_EXPORT int CBS_parse_generalized_time(const CBS *cbs, struct tm *out_tm,
383
+ int allow_timezone_offset);
384
+
385
+ // CBS_parse_utc_time returns one if |cbs| is a valid DER-encoded, ASN.1
386
+ // UTCTime body within the limitations imposed by RFC 5280, or zero otherwise.
387
+ // If |allow_timezone_offset| is non-zero, four-digit timezone offsets, which
388
+ // would not be allowed by DER, are permitted. On success, if |out_tm| is
389
+ // non-NULL, |*out_tm| will be zeroed, and then set to the corresponding time
390
+ // in UTC. This function does not compute |out_tm->tm_wday| or
391
+ // |out_tm->tm_yday|.
392
+ OPENSSL_EXPORT int CBS_parse_utc_time(const CBS *cbs, struct tm *out_tm,
393
+ int allow_timezone_offset);
394
+
350
395
  // CRYPTO ByteBuilder.
351
396
  //
352
397
  // |CBB| objects allow one to build length-prefixed serialisations. A |CBB|
@@ -364,28 +409,40 @@ OPENSSL_EXPORT char *CBS_asn1_oid_to_text(const CBS *cbs);
364
409
 
365
410
  struct cbb_buffer_st {
366
411
  uint8_t *buf;
367
- size_t len; // The number of valid bytes.
368
- size_t cap; // The size of buf.
369
- char can_resize; /* One iff |buf| is owned by this object. If not then |buf|
370
- cannot be resized. */
371
- char error; /* One iff there was an error writing to this CBB. All future
372
- operations will fail. */
412
+ // len is the number of valid bytes in |buf|.
413
+ size_t len;
414
+ // cap is the size of |buf|.
415
+ size_t cap;
416
+ // can_resize is one iff |buf| is owned by this object. If not then |buf|
417
+ // cannot be resized.
418
+ unsigned can_resize : 1;
419
+ // error is one if there was an error writing to this CBB. All future
420
+ // operations will fail.
421
+ unsigned error : 1;
373
422
  };
374
423
 
375
- struct cbb_st {
424
+ struct cbb_child_st {
425
+ // base is a pointer to the buffer this |CBB| writes to.
376
426
  struct cbb_buffer_st *base;
377
- // child points to a child CBB if a length-prefix is pending.
378
- CBB *child;
379
427
  // offset is the number of bytes from the start of |base->buf| to this |CBB|'s
380
428
  // pending length prefix.
381
429
  size_t offset;
382
430
  // pending_len_len contains the number of bytes in this |CBB|'s pending
383
431
  // length-prefix, or zero if no length-prefix is pending.
384
432
  uint8_t pending_len_len;
385
- char pending_is_asn1;
386
- // is_child is true iff this is a child |CBB| (as opposed to a top-level
387
- // |CBB|). Top-level objects are valid arguments for |CBB_finish|.
433
+ unsigned pending_is_asn1 : 1;
434
+ };
435
+
436
+ struct cbb_st {
437
+ // child points to a child CBB if a length-prefix is pending.
438
+ CBB *child;
439
+ // is_child is one if this is a child |CBB| and zero if it is a top-level
440
+ // |CBB|. This determines which arm of the union is valid.
388
441
  char is_child;
442
+ union {
443
+ struct cbb_buffer_st base;
444
+ struct cbb_child_st child;
445
+ } u;
389
446
  };
390
447
 
391
448
  // CBB_zero sets an uninitialised |cbb| to the zero state. It must be
@@ -401,7 +458,8 @@ OPENSSL_EXPORT int CBB_init(CBB *cbb, size_t initial_capacity);
401
458
 
402
459
  // CBB_init_fixed initialises |cbb| to write to |len| bytes at |buf|. Since
403
460
  // |buf| cannot grow, trying to write more than |len| bytes will cause CBB
404
- // functions to fail. It returns one on success or zero on error.
461
+ // functions to fail. This function is infallible and always returns one. It is
462
+ // safe, but not necessary, to call |CBB_cleanup| on |cbb|.
405
463
  OPENSSL_EXPORT int CBB_init_fixed(CBB *cbb, uint8_t *buf, size_t len);
406
464
 
407
465
  // CBB_cleanup frees all resources owned by |cbb| and other |CBB| objects
@@ -462,7 +520,7 @@ OPENSSL_EXPORT int CBB_add_u24_length_prefixed(CBB *cbb, CBB *out_contents);
462
520
  // CBB_add_asn1 sets |*out_contents| to a |CBB| into which the contents of an
463
521
  // ASN.1 object can be written. The |tag| argument will be used as the tag for
464
522
  // the object. It returns one on success or zero on error.
465
- OPENSSL_EXPORT int CBB_add_asn1(CBB *cbb, CBB *out_contents, unsigned tag);
523
+ OPENSSL_EXPORT int CBB_add_asn1(CBB *cbb, CBB *out_contents, CBS_ASN1_TAG tag);
466
524
 
467
525
  // CBB_add_bytes appends |len| bytes from |data| to |cbb|. It returns one on
468
526
  // success and zero otherwise.
@@ -530,11 +588,23 @@ OPENSSL_EXPORT void CBB_discard_child(CBB *cbb);
530
588
  // error.
531
589
  OPENSSL_EXPORT int CBB_add_asn1_uint64(CBB *cbb, uint64_t value);
532
590
 
591
+ // CBB_add_asn1_uint64_with_tag behaves like |CBB_add_asn1_uint64| but uses
592
+ // |tag| as the tag instead of INTEGER. This is useful if the INTEGER type uses
593
+ // implicit tagging.
594
+ OPENSSL_EXPORT int CBB_add_asn1_uint64_with_tag(CBB *cbb, uint64_t value,
595
+ CBS_ASN1_TAG tag);
596
+
533
597
  // CBB_add_asn1_int64 writes an ASN.1 INTEGER into |cbb| using |CBB_add_asn1|
534
598
  // and writes |value| in its contents. It returns one on success and zero on
535
599
  // error.
536
600
  OPENSSL_EXPORT int CBB_add_asn1_int64(CBB *cbb, int64_t value);
537
601
 
602
+ // CBB_add_asn1_int64_with_tag behaves like |CBB_add_asn1_int64| but uses |tag|
603
+ // as the tag instead of INTEGER. This is useful if the INTEGER type uses
604
+ // implicit tagging.
605
+ OPENSSL_EXPORT int CBB_add_asn1_int64_with_tag(CBB *cbb, int64_t value,
606
+ CBS_ASN1_TAG tag);
607
+
538
608
  // CBB_add_asn1_octet_string writes an ASN.1 OCTET STRING into |cbb| with the
539
609
  // given contents. It returns one on success and zero on error.
540
610
  OPENSSL_EXPORT int CBB_add_asn1_octet_string(CBB *cbb, const uint8_t *data,
@@ -174,6 +174,11 @@ OPENSSL_EXPORT int EVP_DecryptInit_ex(EVP_CIPHER_CTX *ctx,
174
174
  // of output bytes may be up to |in_len| plus the block length minus one and
175
175
  // |out| must have sufficient space. The number of bytes actually output is
176
176
  // written to |*out_len|. It returns one on success and zero otherwise.
177
+ //
178
+ // If |ctx| is an AEAD cipher, e.g. |EVP_aes_128_gcm|, and |out| is NULL, this
179
+ // function instead adds |in_len| bytes from |in| to the AAD and sets |*out_len|
180
+ // to |in_len|. The AAD must be fully specified in this way before this function
181
+ // is used to encrypt plaintext.
177
182
  OPENSSL_EXPORT int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out,
178
183
  int *out_len, const uint8_t *in,
179
184
  int in_len);
@@ -191,6 +196,11 @@ OPENSSL_EXPORT int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, uint8_t *out,
191
196
  // output bytes may be up to |in_len| plus the block length minus one and |out|
192
197
  // must have sufficient space. The number of bytes actually output is written
193
198
  // to |*out_len|. It returns one on success and zero otherwise.
199
+ //
200
+ // If |ctx| is an AEAD cipher, e.g. |EVP_aes_128_gcm|, and |out| is NULL, this
201
+ // function instead adds |in_len| bytes from |in| to the AAD and sets |*out_len|
202
+ // to |in_len|. The AAD must be fully specified in this way before this function
203
+ // is used to decrypt ciphertext.
194
204
  OPENSSL_EXPORT int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out,
195
205
  int *out_len, const uint8_t *in,
196
206
  int in_len);
@@ -204,24 +214,6 @@ OPENSSL_EXPORT int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out,
204
214
  OPENSSL_EXPORT int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, uint8_t *out,
205
215
  int *out_len);
206
216
 
207
- // EVP_Cipher performs a one-shot encryption/decryption operation. No partial
208
- // blocks are maintained between calls. However, any internal cipher state is
209
- // still updated. For CBC-mode ciphers, the IV is updated to the final
210
- // ciphertext block. For stream ciphers, the stream is advanced past the bytes
211
- // used. It returns one on success and zero otherwise, unless |EVP_CIPHER_flags|
212
- // has |EVP_CIPH_FLAG_CUSTOM_CIPHER| set. Then it returns the number of bytes
213
- // written or -1 on error.
214
- //
215
- // WARNING: this differs from the usual return value convention when using
216
- // |EVP_CIPH_FLAG_CUSTOM_CIPHER|.
217
- //
218
- // TODO(davidben): The normal ciphers currently never fail, even if, e.g.,
219
- // |in_len| is not a multiple of the block size for CBC-mode decryption. The
220
- // input just gets rounded up while the output gets truncated. This should
221
- // either be officially documented or fail.
222
- OPENSSL_EXPORT int EVP_Cipher(EVP_CIPHER_CTX *ctx, uint8_t *out,
223
- const uint8_t *in, size_t in_len);
224
-
225
217
  // EVP_CipherUpdate calls either |EVP_EncryptUpdate| or |EVP_DecryptUpdate|
226
218
  // depending on how |ctx| has been setup.
227
219
  OPENSSL_EXPORT int EVP_CipherUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out,
@@ -349,6 +341,12 @@ OPENSSL_EXPORT int EVP_BytesToKey(const EVP_CIPHER *type, const EVP_MD *md,
349
341
  #define EVP_CIPH_GCM_MODE 0x6
350
342
  #define EVP_CIPH_XTS_MODE 0x7
351
343
 
344
+ // The following values are never returned from |EVP_CIPHER_mode| and are
345
+ // included only to make it easier to compile code with BoringSSL.
346
+ #define EVP_CIPH_CCM_MODE 0x8
347
+ #define EVP_CIPH_OCB_MODE 0x9
348
+ #define EVP_CIPH_WRAP_MODE 0xa
349
+
352
350
 
353
351
  // Cipher flags (for |EVP_CIPHER_flags|).
354
352
 
@@ -420,6 +418,30 @@ OPENSSL_EXPORT int EVP_EncryptFinal(EVP_CIPHER_CTX *ctx, uint8_t *out,
420
418
  OPENSSL_EXPORT int EVP_DecryptFinal(EVP_CIPHER_CTX *ctx, uint8_t *out,
421
419
  int *out_len);
422
420
 
421
+ // EVP_Cipher historically exposed an internal implementation detail of |ctx|
422
+ // and should not be used. Use |EVP_CipherUpdate| and |EVP_CipherFinal_ex|
423
+ // instead.
424
+ //
425
+ // If |ctx|'s cipher does not have the |EVP_CIPH_FLAG_CUSTOM_CIPHER| flag, it
426
+ // encrypts or decrypts |in_len| bytes from |in| and writes the resulting
427
+ // |in_len| bytes to |out|. It returns one on success and zero on error.
428
+ // |in_len| must be a multiple of the cipher's block size, or the behavior is
429
+ // undefined.
430
+ //
431
+ // TODO(davidben): Rather than being undefined (it'll often round the length up
432
+ // and likely read past the buffer), just fail the operation.
433
+ //
434
+ // If |ctx|'s cipher has the |EVP_CIPH_FLAG_CUSTOM_CIPHER| flag, it runs in one
435
+ // of two modes: If |in| is non-NULL, it behaves like |EVP_CipherUpdate|. If
436
+ // |in| is NULL, it behaves like |EVP_CipherFinal_ex|. In both cases, it returns
437
+ // |*out_len| on success and -1 on error.
438
+ //
439
+ // WARNING: The two possible calling conventions of this function signal errors
440
+ // incompatibly. In the first, zero indicates an error. In the second, zero
441
+ // indicates success with zero bytes of output.
442
+ OPENSSL_EXPORT int EVP_Cipher(EVP_CIPHER_CTX *ctx, uint8_t *out,
443
+ const uint8_t *in, size_t in_len);
444
+
423
445
  // EVP_add_cipher_alias does nothing and returns one.
424
446
  OPENSSL_EXPORT int EVP_add_cipher_alias(const char *a, const char *b);
425
447
 
@@ -433,6 +455,12 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_get_cipherbyname(const char *name);
433
455
  // These AEADs are deprecated AES-GCM implementations that set
434
456
  // |EVP_CIPH_FLAG_CUSTOM_CIPHER|. Use |EVP_aead_aes_128_gcm| and
435
457
  // |EVP_aead_aes_256_gcm| instead.
458
+ //
459
+ // WARNING: Although these APIs allow streaming an individual AES-GCM operation,
460
+ // this is not secure. Until calling |EVP_DecryptFinal_ex|, the tag has not yet
461
+ // been checked and output released by |EVP_DecryptUpdate| is unauthenticated
462
+ // and easily manipulated by attackers. Callers must buffer the output and may
463
+ // not act on it until the entire operation is complete.
436
464
  OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_gcm(void);
437
465
  OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_gcm(void);
438
466
 
@@ -484,9 +512,6 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_cast5_cbc(void);
484
512
 
485
513
  // The following flags do nothing and are included only to make it easier to
486
514
  // compile code with BoringSSL.
487
- #define EVP_CIPH_CCM_MODE (-1)
488
- #define EVP_CIPH_OCB_MODE (-2)
489
- #define EVP_CIPH_WRAP_MODE (-3)
490
515
  #define EVP_CIPHER_CTX_FLAG_WRAP_ALLOW 0
491
516
 
492
517
  // EVP_CIPHER_CTX_set_flags does nothing.
@@ -575,6 +600,9 @@ struct evp_cipher_ctx_st {
575
600
  int final_used;
576
601
 
577
602
  uint8_t final[EVP_MAX_BLOCK_LENGTH]; // possible final block
603
+
604
+ // Has this structure been rendered unusable by a failure.
605
+ int poisoned;
578
606
  } /* EVP_CIPHER_CTX */;
579
607
 
580
608
  typedef struct evp_cipher_info_st {
@@ -582,45 +610,6 @@ typedef struct evp_cipher_info_st {
582
610
  unsigned char iv[EVP_MAX_IV_LENGTH];
583
611
  } EVP_CIPHER_INFO;
584
612
 
585
- struct evp_cipher_st {
586
- // type contains a NID identifing the cipher. (e.g. NID_aes_128_gcm.)
587
- int nid;
588
-
589
- // block_size contains the block size, in bytes, of the cipher, or 1 for a
590
- // stream cipher.
591
- unsigned block_size;
592
-
593
- // key_len contains the key size, in bytes, for the cipher. If the cipher
594
- // takes a variable key size then this contains the default size.
595
- unsigned key_len;
596
-
597
- // iv_len contains the IV size, in bytes, or zero if inapplicable.
598
- unsigned iv_len;
599
-
600
- // ctx_size contains the size, in bytes, of the per-key context for this
601
- // cipher.
602
- unsigned ctx_size;
603
-
604
- // flags contains the OR of a number of flags. See |EVP_CIPH_*|.
605
- uint32_t flags;
606
-
607
- // app_data is a pointer to opaque, user data.
608
- void *app_data;
609
-
610
- int (*init)(EVP_CIPHER_CTX *ctx, const uint8_t *key, const uint8_t *iv,
611
- int enc);
612
-
613
- int (*cipher)(EVP_CIPHER_CTX *ctx, uint8_t *out, const uint8_t *in,
614
- size_t inl);
615
-
616
- // cleanup, if non-NULL, releases memory associated with the context. It is
617
- // called if |EVP_CTRL_INIT| succeeds. Note that |init| may not have been
618
- // called at this point.
619
- void (*cleanup)(EVP_CIPHER_CTX *);
620
-
621
- int (*ctrl)(EVP_CIPHER_CTX *, int type, int arg, void *ptr);
622
- };
623
-
624
613
 
625
614
  #if defined(__cplusplus)
626
615
  } // extern C
@@ -110,8 +110,8 @@ OPENSSL_EXPORT int NCONF_load_bio(CONF *conf, BIO *bio, long *out_error_line);
110
110
  // NCONF_get_section returns a stack of values for a given section in |conf|.
111
111
  // If |section| is NULL, the default section is returned. It returns NULL on
112
112
  // error.
113
- OPENSSL_EXPORT STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf,
114
- const char *section);
113
+ OPENSSL_EXPORT const STACK_OF(CONF_VALUE) *NCONF_get_section(
114
+ const CONF *conf, const char *section);
115
115
 
116
116
  // NCONF_get_string returns the value of the key |name|, in section |section|.
117
117
  // The |section| argument may be NULL to indicate the default section. It
@@ -121,19 +121,6 @@ OPENSSL_EXPORT const char *NCONF_get_string(const CONF *conf,
121
121
  const char *name);
122
122
 
123
123
 
124
- // Utility functions
125
-
126
- // CONF_parse_list takes a list separated by 'sep' and calls |list_cb| giving
127
- // the start and length of each member, optionally stripping leading and
128
- // trailing whitespace. This can be used to parse comma separated lists for
129
- // example. If |list_cb| returns <= 0, then the iteration is halted and that
130
- // value is returned immediately. Otherwise it returns one. Note that |list_cb|
131
- // may be called on an empty member.
132
- int CONF_parse_list(const char *list, char sep, int remove_whitespace,
133
- int (*list_cb)(const char *elem, int len, void *usr),
134
- void *arg);
135
-
136
-
137
124
  // Deprecated functions
138
125
 
139
126
  // These defines do nothing but are provided to make old code easier to