grpc 1.54.2 → 1.56.0.pre3

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 (1230) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +152 -91
  3. data/include/grpc/event_engine/event_engine.h +4 -3
  4. data/include/grpc/grpc_audit_logging.h +96 -0
  5. data/include/grpc/impl/grpc_types.h +2 -0
  6. data/include/grpc/module.modulemap +2 -0
  7. data/include/grpc/support/json.h +218 -0
  8. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +6 -1
  9. data/src/core/ext/filters/client_channel/backend_metric.cc +4 -1
  10. data/src/core/ext/filters/client_channel/channel_connectivity.cc +4 -4
  11. data/src/core/ext/filters/client_channel/client_channel.cc +98 -120
  12. data/src/core/ext/filters/client_channel/client_channel.h +26 -16
  13. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +20 -19
  14. data/src/core/ext/filters/client_channel/client_channel_internal.h +22 -59
  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 -36
  17. data/src/core/ext/filters/client_channel/http_proxy.cc +34 -1
  18. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +3 -0
  19. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +7 -6
  20. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +1 -1
  21. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  22. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.cc +455 -0
  23. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.h +54 -0
  24. data/src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h +186 -0
  25. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +2 -7
  26. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +56 -24
  27. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +23 -2
  28. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +19 -6
  29. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +3 -11
  30. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +16 -7
  31. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +18 -1
  32. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +52 -50
  33. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +6 -4
  34. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +36 -13
  35. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc +76 -6
  36. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +33 -41
  37. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +6 -12
  38. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +54 -49
  39. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +4 -12
  40. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -18
  41. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +48 -51
  42. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +10 -15
  43. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +16 -22
  44. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +19 -118
  45. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h +30 -0
  46. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +35 -33
  47. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +60 -0
  48. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h +27 -0
  49. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +549 -0
  50. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h +35 -0
  51. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc +97 -0
  52. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h +32 -0
  53. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +2 -13
  54. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h +24 -0
  55. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +30 -28
  56. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +156 -66
  57. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +16 -1
  58. data/src/core/ext/filters/client_channel/retry_filter.cc +23 -55
  59. data/src/core/ext/filters/client_channel/retry_service_config.cc +9 -8
  60. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +10 -40
  61. data/src/core/ext/filters/client_channel/subchannel.cc +10 -196
  62. data/src/core/ext/filters/client_channel/subchannel.h +3 -43
  63. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +1 -1
  64. data/src/core/ext/filters/http/message_compress/compression_filter.cc +7 -7
  65. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +168 -75
  66. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +6 -8
  67. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +3 -3
  68. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +16 -1
  69. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +78 -23
  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 +46 -95
  73. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -7
  74. data/src/core/ext/transport/chttp2/transport/frame_ping.h +0 -3
  75. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +1 -0
  76. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -0
  77. data/src/core/ext/transport/chttp2/transport/internal.h +4 -19
  78. data/src/core/ext/transport/chttp2/transport/writing.cc +14 -3
  79. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +87 -52
  80. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +414 -181
  81. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -60
  82. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +481 -224
  83. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +90 -55
  84. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +415 -188
  85. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +357 -210
  86. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1572 -729
  87. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +30 -17
  88. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +144 -47
  89. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +34 -21
  90. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -62
  91. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +27 -14
  92. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +78 -38
  93. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +20 -11
  94. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +48 -26
  95. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +20 -11
  96. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +48 -26
  97. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +109 -62
  98. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +566 -244
  99. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +21 -12
  100. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +45 -30
  101. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +22 -19
  102. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +82 -29
  103. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +23 -16
  104. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +45 -30
  105. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +230 -143
  106. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +733 -404
  107. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +417 -264
  108. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1839 -899
  109. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -41
  110. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +286 -148
  111. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +531 -334
  112. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2017 -1131
  113. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -12
  114. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +45 -30
  115. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +89 -52
  116. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +347 -232
  117. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +264 -165
  118. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +888 -476
  119. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +139 -80
  120. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +527 -274
  121. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -13
  122. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +50 -36
  123. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +380 -221
  124. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1168 -611
  125. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +166 -94
  126. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +666 -292
  127. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +18 -11
  128. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +37 -26
  129. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +21 -12
  130. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +45 -30
  131. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +30 -17
  132. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +144 -47
  133. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +274 -167
  134. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +789 -440
  135. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +228 -137
  136. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +1100 -501
  137. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -13
  138. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +60 -37
  139. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +350 -211
  140. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1072 -646
  141. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +33 -18
  142. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +117 -51
  143. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +34 -19
  144. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +118 -56
  145. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +38 -21
  146. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +148 -64
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +31 -18
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +143 -65
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +22 -13
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +51 -37
  151. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +78 -43
  152. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +265 -127
  153. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +145 -88
  154. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +438 -241
  155. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +115 -62
  156. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +559 -227
  157. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +18 -11
  158. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +35 -26
  159. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +175 -118
  160. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +857 -442
  161. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +172 -95
  162. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +864 -374
  163. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -27
  164. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +159 -110
  165. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +39 -18
  166. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +74 -56
  167. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +28 -15
  168. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +71 -45
  169. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +131 -74
  170. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +489 -249
  171. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +135 -80
  172. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +505 -245
  173. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +248 -139
  174. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +933 -433
  175. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +80 -49
  176. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +616 -201
  177. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +1283 -776
  178. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +5422 -2519
  179. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +49 -28
  180. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +164 -84
  181. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +228 -141
  182. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +738 -399
  183. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +20 -11
  184. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +48 -26
  185. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +21 -12
  186. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +45 -30
  187. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +32 -19
  188. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +70 -49
  189. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +27 -14
  190. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +110 -43
  191. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +46 -25
  192. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +259 -100
  193. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +21 -12
  194. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +45 -30
  195. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +18 -11
  196. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +35 -26
  197. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +42 -23
  198. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +108 -70
  199. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +7 -4
  200. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +21 -16
  201. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +43 -24
  202. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +110 -75
  203. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +30 -17
  204. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +95 -50
  205. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +16 -9
  206. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -23
  207. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +60 -37
  208. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +150 -108
  209. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +74 -43
  210. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +357 -167
  211. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +44 -25
  212. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +114 -80
  213. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +41 -20
  214. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +245 -82
  215. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +32 -19
  216. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +73 -51
  217. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +474 -296
  218. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2121 -1076
  219. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +18 -11
  220. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +35 -26
  221. 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 -21
  222. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +112 -78
  223. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +72 -45
  224. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +193 -138
  225. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +34 -21
  226. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +119 -78
  227. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +18 -11
  228. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +35 -26
  229. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +7 -4
  230. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +15 -10
  231. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +184 -96
  232. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +907 -360
  233. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +56 -33
  234. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -101
  235. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +188 -111
  236. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +816 -419
  237. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +32 -19
  238. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +109 -53
  239. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +10 -7
  240. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +18 -14
  241. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +300 -177
  242. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +1284 -522
  243. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +42 -23
  244. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +188 -75
  245. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +130 -83
  246. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +510 -238
  247. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +22 -13
  248. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +55 -34
  249. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +39 -26
  250. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +124 -68
  251. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +21 -12
  252. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +47 -30
  253. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +52 -29
  254. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +92 -62
  255. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +37 -20
  256. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +133 -63
  257. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +22 -13
  258. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +91 -40
  259. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -12
  260. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +50 -32
  261. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +18 -11
  262. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +37 -26
  263. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +46 -27
  264. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +101 -70
  265. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +13 -10
  266. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +25 -22
  267. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +40 -23
  268. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +161 -75
  269. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +31 -18
  270. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +114 -56
  271. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +46 -29
  272. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +139 -91
  273. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +65 -42
  274. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +200 -121
  275. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +80 -45
  276. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +208 -131
  277. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +34 -21
  278. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +74 -53
  279. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +7 -4
  280. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +13 -8
  281. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +16 -9
  282. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +28 -18
  283. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +28 -15
  284. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +55 -34
  285. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +43 -22
  286. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +91 -53
  287. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +35 -20
  288. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +92 -57
  289. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +7 -4
  290. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +13 -8
  291. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -11
  292. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +48 -26
  293. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +23 -14
  294. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +61 -41
  295. data/src/core/ext/upb-generated/google/api/annotations.upb.c +14 -11
  296. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -20
  297. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +255 -154
  298. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +934 -450
  299. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +299 -180
  300. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +946 -483
  301. data/src/core/ext/upb-generated/google/api/http.upb.c +68 -35
  302. data/src/core/ext/upb-generated/google/api/http.upb.h +284 -120
  303. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +22 -13
  304. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +95 -37
  305. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -10
  306. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +38 -22
  307. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +1018 -424
  308. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +3851 -1412
  309. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -10
  310. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +38 -22
  311. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +10 -7
  312. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +18 -14
  313. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +62 -39
  314. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +207 -102
  315. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -10
  316. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +38 -22
  317. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +90 -51
  318. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +157 -107
  319. data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -13
  320. data/src/core/ext/upb-generated/google/rpc/status.upb.h +95 -37
  321. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +59 -34
  322. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +154 -92
  323. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +43 -24
  324. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +118 -60
  325. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +250 -145
  326. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +919 -415
  327. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +34 -19
  328. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +76 -51
  329. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +25 -14
  330. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +45 -30
  331. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +144 -81
  332. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +405 -217
  333. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +51 -26
  334. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +153 -61
  335. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +173 -102
  336. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +855 -298
  337. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +68 -49
  338. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +155 -104
  339. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +26 -17
  340. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +55 -34
  341. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +12 -9
  342. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +31 -14
  343. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +26 -17
  344. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +55 -34
  345. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +23 -16
  346. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +45 -30
  347. data/src/core/ext/upb-generated/validate/validate.upb.c +845 -455
  348. data/src/core/ext/upb-generated/validate/validate.upb.h +4347 -1908
  349. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +68 -49
  350. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +155 -104
  351. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +26 -17
  352. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +55 -34
  353. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +12 -9
  354. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +31 -14
  355. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +65 -44
  356. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +137 -91
  357. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +23 -16
  358. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +45 -30
  359. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +16 -9
  360. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +28 -18
  361. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +21 -12
  362. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +45 -30
  363. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +37 -22
  364. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +96 -63
  365. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +26 -17
  366. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +52 -29
  367. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +21 -12
  368. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +45 -30
  369. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +23 -14
  370. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +62 -42
  371. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +44 -25
  372. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +169 -79
  373. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +27 -14
  374. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +65 -38
  375. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +78 -38
  376. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +182 -76
  377. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +21 -12
  378. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +89 -34
  379. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +18 -11
  380. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +35 -26
  381. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +32 -19
  382. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +150 -54
  383. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +10 -7
  384. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +18 -14
  385. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +34 -21
  386. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +161 -63
  387. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +162 -101
  388. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +501 -293
  389. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +85 -52
  390. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +430 -164
  391. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +24 -15
  392. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +53 -37
  393. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +40 -23
  394. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +161 -75
  395. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +37 -22
  396. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +92 -66
  397. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +43 -22
  398. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +91 -53
  399. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +21 -12
  400. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +45 -30
  401. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +1 -1
  402. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +6 -5
  403. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +1 -1
  404. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +6 -5
  405. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +1 -1
  406. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +6 -5
  407. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +1 -1
  408. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +6 -5
  409. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +1 -1
  410. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +6 -5
  411. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +1 -1
  412. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +6 -5
  413. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +1 -1
  414. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +6 -5
  415. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +1 -1
  416. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +6 -5
  417. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +1 -1
  418. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +6 -5
  419. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +1 -1
  420. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +6 -5
  421. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +1 -1
  422. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +6 -5
  423. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +1 -1
  424. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +6 -5
  425. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +1 -1
  426. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +6 -5
  427. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +1 -1
  428. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +6 -5
  429. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +252 -253
  430. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +6 -5
  431. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +1 -1
  432. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +6 -5
  433. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +1 -1
  434. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +6 -5
  435. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +1 -1
  436. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +6 -5
  437. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +1 -1
  438. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +6 -5
  439. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +1 -1
  440. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +6 -5
  441. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +1 -1
  442. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +6 -5
  443. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +1 -1
  444. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +6 -5
  445. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +1 -1
  446. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +6 -5
  447. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +13 -12
  448. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +11 -5
  449. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +1 -1
  450. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +6 -5
  451. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +1 -1
  452. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +6 -5
  453. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +1 -1
  454. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +6 -5
  455. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +1 -1
  456. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +6 -5
  457. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +1 -1
  458. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +6 -5
  459. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +1 -1
  460. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +6 -5
  461. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +44 -44
  462. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +6 -5
  463. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +1 -1
  464. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +6 -5
  465. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +1 -1
  466. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +6 -5
  467. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +1 -1
  468. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +6 -5
  469. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +1 -1
  470. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +6 -5
  471. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +1 -1
  472. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +6 -5
  473. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +1 -1
  474. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +6 -5
  475. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +1 -1
  476. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +6 -5
  477. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +1 -1
  478. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +6 -5
  479. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +1 -1
  480. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +6 -5
  481. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +1 -1
  482. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +6 -5
  483. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +1 -1
  484. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +6 -5
  485. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +1 -1
  486. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +6 -5
  487. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +1 -1
  488. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +6 -5
  489. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +1 -1
  490. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +6 -5
  491. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +1 -1
  492. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +6 -5
  493. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +1 -1
  494. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +6 -5
  495. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +134 -128
  496. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +11 -5
  497. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +1 -1
  498. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +6 -5
  499. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +1 -1
  500. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +6 -5
  501. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +1 -1
  502. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +6 -5
  503. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +1 -1
  504. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +6 -5
  505. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +1 -1
  506. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +6 -5
  507. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +1 -1
  508. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +6 -5
  509. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +1 -1
  510. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +6 -5
  511. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +1 -1
  512. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +6 -5
  513. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +1 -1
  514. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +6 -5
  515. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +1 -1
  516. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +6 -5
  517. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +1 -1
  518. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +6 -5
  519. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +1 -1
  520. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +6 -5
  521. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +1 -1
  522. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +6 -5
  523. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +1 -1
  524. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +6 -5
  525. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +1 -1
  526. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +6 -5
  527. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +1 -1
  528. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +6 -5
  529. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +1 -1
  530. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +6 -5
  531. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +1 -1
  532. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +6 -5
  533. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +1 -1
  534. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +6 -5
  535. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +1 -1
  536. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +6 -5
  537. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +1 -1
  538. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +6 -5
  539. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +379 -376
  540. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +6 -5
  541. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +1 -1
  542. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +6 -5
  543. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +1 -1
  544. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +6 -5
  545. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +138 -136
  546. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +6 -5
  547. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +1 -1
  548. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +6 -5
  549. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +1 -1
  550. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +6 -5
  551. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +1 -1
  552. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +6 -5
  553. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +1 -1
  554. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +6 -5
  555. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +1 -1
  556. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +6 -5
  557. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +1 -1
  558. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +6 -5
  559. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +12 -13
  560. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +6 -5
  561. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +1 -1
  562. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +6 -5
  563. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +1 -1
  564. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +6 -5
  565. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +1 -1
  566. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +6 -5
  567. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  568. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  569. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +1 -1
  570. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +6 -5
  571. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +1 -1
  572. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +6 -5
  573. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +1 -1
  574. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +6 -5
  575. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +1 -1
  576. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +6 -5
  577. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +1 -1
  578. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +6 -5
  579. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +1 -1
  580. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +6 -5
  581. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +1 -1
  582. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +6 -5
  583. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +1 -1
  584. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +6 -5
  585. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +1 -1
  586. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +6 -5
  587. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +1 -1
  588. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +6 -5
  589. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +1 -1
  590. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +6 -5
  591. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +1 -1
  592. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +6 -5
  593. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +1 -1
  594. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +6 -5
  595. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +1 -1
  596. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +6 -5
  597. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +1 -1
  598. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +6 -5
  599. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +1 -1
  600. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +6 -5
  601. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +1 -1
  602. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +6 -5
  603. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +1 -1
  604. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +6 -5
  605. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +1 -1
  606. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +6 -5
  607. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +1 -1
  608. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +6 -5
  609. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +1 -1
  610. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +6 -5
  611. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +1 -1
  612. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +6 -5
  613. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +1 -1
  614. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +6 -5
  615. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +1 -1
  616. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +6 -5
  617. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +1 -1
  618. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +6 -5
  619. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +1 -1
  620. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +6 -5
  621. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +329 -273
  622. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +11 -5
  623. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +1 -1
  624. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +6 -5
  625. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +1 -1
  626. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +6 -5
  627. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +1 -1
  628. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +6 -5
  629. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +1 -1
  630. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +6 -5
  631. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +1 -1
  632. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +6 -5
  633. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +1 -1
  634. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +6 -5
  635. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +1 -1
  636. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +6 -5
  637. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +1 -1
  638. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +6 -5
  639. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +1 -1
  640. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +6 -5
  641. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +1 -1
  642. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +6 -5
  643. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +1 -1
  644. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +6 -5
  645. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +1 -1
  646. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +6 -5
  647. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +1 -1
  648. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +6 -5
  649. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +1 -1
  650. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +6 -5
  651. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +1 -1
  652. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +6 -5
  653. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +1 -1
  654. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +6 -5
  655. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +1 -1
  656. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +6 -5
  657. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +1 -1
  658. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +6 -5
  659. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +1 -1
  660. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +6 -5
  661. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +1 -1
  662. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +6 -5
  663. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +1 -1
  664. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +6 -5
  665. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +1 -1
  666. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +6 -5
  667. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +1 -1
  668. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +6 -5
  669. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +1 -1
  670. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +6 -5
  671. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +1 -1
  672. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +6 -5
  673. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +1 -1
  674. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +6 -5
  675. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +1 -1
  676. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +6 -5
  677. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +1 -1
  678. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +6 -5
  679. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +1 -1
  680. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +6 -5
  681. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  682. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  683. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +1 -1
  684. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +6 -5
  685. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +1 -1
  686. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +6 -5
  687. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +1 -1
  688. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +6 -5
  689. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +1 -1
  690. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +6 -5
  691. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +1 -1
  692. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +6 -5
  693. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +1 -1
  694. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +6 -5
  695. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +1 -1
  696. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +6 -5
  697. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +1 -1
  698. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +6 -5
  699. data/src/core/ext/xds/certificate_provider_store.cc +8 -13
  700. data/src/core/ext/xds/certificate_provider_store.h +1 -1
  701. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +30 -42
  702. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +14 -9
  703. data/src/core/ext/xds/upb_utils.h +1 -1
  704. data/src/core/ext/xds/xds_api.cc +41 -18
  705. data/src/core/ext/xds/xds_api.h +5 -4
  706. data/src/core/ext/xds/xds_audit_logger_registry.cc +122 -0
  707. data/src/core/ext/xds/xds_audit_logger_registry.h +68 -0
  708. data/src/core/ext/xds/xds_bootstrap.cc +3 -3
  709. data/src/core/ext/xds/xds_bootstrap_grpc.cc +35 -23
  710. data/src/core/ext/xds/xds_bootstrap_grpc.h +5 -0
  711. data/src/core/ext/xds/xds_client.cc +29 -7
  712. data/src/core/ext/xds/xds_client.h +1 -1
  713. data/src/core/ext/xds/xds_client_stats.h +1 -1
  714. data/src/core/ext/xds/xds_cluster.cc +44 -51
  715. data/src/core/ext/xds/xds_cluster.h +1 -2
  716. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +15 -11
  717. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +2 -2
  718. data/src/core/ext/xds/xds_common_types.cc +8 -5
  719. data/src/core/ext/xds/xds_endpoint.cc +5 -2
  720. data/src/core/ext/xds/xds_endpoint.h +1 -1
  721. data/src/core/ext/xds/xds_http_fault_filter.cc +18 -15
  722. data/src/core/ext/xds/xds_http_fault_filter.h +3 -2
  723. data/src/core/ext/xds/xds_http_filters.h +7 -4
  724. data/src/core/ext/xds/xds_http_rbac_filter.cc +158 -73
  725. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -2
  726. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +17 -13
  727. data/src/core/ext/xds/xds_http_stateful_session_filter.h +3 -2
  728. data/src/core/ext/xds/xds_lb_policy_registry.cc +24 -36
  729. data/src/core/ext/xds/xds_listener.cc +11 -4
  730. data/src/core/ext/xds/xds_listener.h +1 -1
  731. data/src/core/ext/xds/xds_resource_type.h +2 -2
  732. data/src/core/ext/xds/xds_route_config.cc +48 -8
  733. data/src/core/ext/xds/xds_route_config.h +1 -1
  734. data/src/core/ext/xds/xds_routing.cc +2 -2
  735. data/src/core/ext/xds/xds_transport_grpc.cc +3 -1
  736. data/src/core/lib/avl/avl.h +5 -0
  737. data/src/core/lib/channel/channel_args.cc +80 -22
  738. data/src/core/lib/channel/channel_args.h +34 -1
  739. data/src/core/lib/channel/channel_trace.cc +16 -12
  740. data/src/core/lib/channel/channelz.cc +163 -135
  741. data/src/core/lib/channel/channelz.h +42 -35
  742. data/src/core/lib/channel/channelz_registry.cc +24 -20
  743. data/src/core/lib/channel/connected_channel.cc +99 -33
  744. data/src/core/lib/channel/promise_based_filter.cc +2 -12
  745. data/src/core/lib/channel/promise_based_filter.h +2 -0
  746. data/src/core/lib/compression/compression_internal.cc +2 -5
  747. data/src/core/lib/config/config_vars.cc +20 -18
  748. data/src/core/lib/config/config_vars.h +4 -4
  749. data/src/core/lib/config/load_config.cc +13 -0
  750. data/src/core/lib/config/load_config.h +6 -0
  751. data/src/core/lib/debug/event_log.h +1 -1
  752. data/src/core/lib/debug/stats_data.h +1 -1
  753. data/src/core/lib/debug/trace.cc +34 -56
  754. data/src/core/lib/debug/trace.h +14 -4
  755. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +211 -0
  756. data/src/core/lib/event_engine/cf_engine/cf_engine.h +86 -0
  757. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +354 -0
  758. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +146 -0
  759. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +79 -0
  760. data/src/core/lib/event_engine/default_event_engine.cc +13 -1
  761. data/src/core/lib/event_engine/default_event_engine_factory.cc +14 -2
  762. data/src/core/lib/event_engine/poller.h +2 -2
  763. data/src/core/lib/event_engine/posix.h +4 -0
  764. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +1 -1
  765. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +7 -18
  766. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +9 -0
  767. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +41 -45
  768. data/src/core/lib/event_engine/posix_engine/posix_engine.h +1 -1
  769. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +4 -4
  770. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +7 -8
  771. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +6 -1
  772. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -0
  773. data/src/core/lib/event_engine/posix_engine/timer_manager.h +1 -1
  774. data/src/core/lib/event_engine/shim.cc +9 -1
  775. data/src/core/lib/event_engine/{thread_pool.cc → thread_pool/original_thread_pool.cc} +28 -25
  776. data/src/core/lib/event_engine/{thread_pool.h → thread_pool/original_thread_pool.h} +11 -15
  777. data/src/core/lib/event_engine/thread_pool/thread_pool.h +50 -0
  778. data/src/core/lib/event_engine/{executor/executor.h → thread_pool/thread_pool_factory.cc} +17 -15
  779. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +489 -0
  780. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +249 -0
  781. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +166 -0
  782. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +108 -0
  783. data/src/core/lib/event_engine/trace.cc +1 -0
  784. data/src/core/lib/event_engine/trace.h +6 -0
  785. data/src/core/lib/event_engine/windows/iocp.cc +4 -3
  786. data/src/core/lib/event_engine/windows/iocp.h +3 -3
  787. data/src/core/lib/event_engine/windows/win_socket.cc +6 -6
  788. data/src/core/lib/event_engine/windows/win_socket.h +4 -4
  789. data/src/core/lib/event_engine/windows/windows_endpoint.cc +11 -10
  790. data/src/core/lib/event_engine/windows/windows_endpoint.h +3 -2
  791. data/src/core/lib/event_engine/windows/windows_engine.cc +19 -17
  792. data/src/core/lib/event_engine/windows/windows_engine.h +6 -6
  793. data/src/core/lib/event_engine/windows/windows_listener.cc +3 -3
  794. data/src/core/lib/event_engine/windows/windows_listener.h +3 -2
  795. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +63 -0
  796. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +71 -0
  797. data/src/core/lib/event_engine/work_queue/work_queue.h +62 -0
  798. data/src/core/lib/experiments/config.cc +38 -7
  799. data/src/core/lib/experiments/config.h +16 -0
  800. data/src/core/lib/experiments/experiments.cc +69 -19
  801. data/src/core/lib/experiments/experiments.h +29 -20
  802. data/src/core/lib/gpr/log_internal.h +55 -0
  803. data/src/core/lib/gpr/posix/time.cc +5 -0
  804. data/src/core/lib/gprpp/crash.cc +10 -0
  805. data/src/core/lib/gprpp/crash.h +3 -0
  806. data/src/core/lib/gprpp/per_cpu.cc +33 -0
  807. data/src/core/lib/gprpp/per_cpu.h +29 -6
  808. data/src/core/lib/gprpp/status_helper.cc +2 -2
  809. data/src/core/lib/gprpp/time.cc +1 -0
  810. data/src/core/lib/gprpp/validation_errors.cc +8 -3
  811. data/src/core/lib/gprpp/validation_errors.h +16 -9
  812. data/src/core/lib/iomgr/buffer_list.h +0 -1
  813. data/src/core/lib/iomgr/cfstream_handle.cc +1 -1
  814. data/src/core/lib/iomgr/endpoint_cfstream.cc +10 -8
  815. data/src/core/lib/iomgr/ev_apple.cc +12 -12
  816. data/src/core/lib/iomgr/ev_epoll1_linux.cc +10 -3
  817. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +15 -1
  818. data/src/core/lib/iomgr/iocp_windows.cc +24 -3
  819. data/src/core/lib/iomgr/iocp_windows.h +11 -0
  820. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +1 -1
  821. data/src/core/lib/iomgr/socket_utils_common_posix.cc +4 -2
  822. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  823. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  824. data/src/core/lib/iomgr/socket_windows.cc +61 -7
  825. data/src/core/lib/iomgr/socket_windows.h +9 -2
  826. data/src/core/lib/iomgr/tcp_client_cfstream.cc +14 -3
  827. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -0
  828. data/src/core/lib/iomgr/tcp_server_posix.cc +148 -107
  829. data/src/core/lib/iomgr/tcp_server_utils_posix.h +1 -1
  830. data/src/core/lib/iomgr/tcp_server_windows.cc +1 -1
  831. data/src/core/lib/iomgr/timer_generic.cc +17 -16
  832. data/src/core/lib/json/json.h +2 -218
  833. data/src/core/lib/json/json_object_loader.cc +24 -25
  834. data/src/core/lib/json/json_object_loader.h +30 -18
  835. data/src/core/lib/json/json_reader.cc +69 -42
  836. data/src/core/lib/json/json_reader.h +34 -0
  837. data/src/core/lib/json/json_util.cc +10 -15
  838. data/src/core/lib/json/json_util.h +5 -4
  839. data/src/core/lib/json/json_writer.cc +24 -25
  840. data/src/core/lib/json/json_writer.h +33 -0
  841. data/src/core/lib/load_balancing/lb_policy.h +13 -0
  842. data/src/core/lib/load_balancing/lb_policy_registry.cc +9 -8
  843. data/src/core/lib/matchers/matchers.cc +3 -4
  844. data/src/core/lib/matchers/matchers.h +2 -1
  845. data/src/core/lib/promise/activity.cc +5 -0
  846. data/src/core/lib/promise/activity.h +10 -0
  847. data/src/core/lib/promise/detail/promise_factory.h +1 -1
  848. data/src/core/lib/promise/party.cc +31 -13
  849. data/src/core/lib/promise/party.h +11 -2
  850. data/src/core/lib/promise/pipe.h +16 -2
  851. data/src/core/lib/promise/prioritized_race.h +95 -0
  852. data/src/core/lib/promise/sleep.cc +2 -1
  853. data/src/core/lib/resolver/server_address.cc +0 -8
  854. data/src/core/lib/resolver/server_address.h +0 -6
  855. data/src/core/lib/resource_quota/memory_quota.cc +7 -7
  856. data/src/core/lib/resource_quota/memory_quota.h +1 -2
  857. data/src/core/lib/security/authorization/audit_logging.cc +98 -0
  858. data/src/core/lib/security/authorization/audit_logging.h +73 -0
  859. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +47 -2
  860. data/src/core/lib/security/authorization/grpc_authorization_engine.h +18 -1
  861. data/src/core/lib/security/authorization/rbac_policy.cc +36 -4
  862. data/src/core/lib/security/authorization/rbac_policy.h +19 -2
  863. data/src/core/lib/security/authorization/stdout_logger.cc +75 -0
  864. data/src/core/lib/security/authorization/stdout_logger.h +61 -0
  865. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +8 -4
  866. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +8 -18
  867. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +14 -8
  868. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +54 -49
  869. data/src/core/lib/security/credentials/external/external_account_credentials.cc +64 -64
  870. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +23 -21
  871. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +29 -27
  872. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +5 -2
  873. data/src/core/lib/security/credentials/jwt/json_token.cc +19 -16
  874. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +10 -5
  875. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +40 -38
  876. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +18 -16
  877. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +1 -5
  878. data/src/core/lib/security/util/json_util.cc +6 -5
  879. data/src/core/lib/service_config/service_config_call_data.h +49 -20
  880. data/src/core/lib/service_config/service_config_impl.cc +13 -6
  881. data/src/core/lib/slice/slice.h +2 -0
  882. data/src/core/lib/surface/call.cc +107 -47
  883. data/src/core/lib/surface/call.h +1 -5
  884. data/src/core/lib/surface/completion_queue.cc +8 -3
  885. data/src/core/lib/surface/server.cc +47 -19
  886. data/src/core/lib/surface/version.cc +2 -2
  887. data/src/core/lib/transport/batch_builder.cc +15 -12
  888. data/src/core/lib/transport/batch_builder.h +48 -36
  889. data/src/core/lib/transport/metadata_batch.h +2 -59
  890. data/src/core/lib/transport/metadata_compression_traits.h +67 -0
  891. data/src/core/lib/transport/simple_slice_based_metadata.h +48 -0
  892. data/src/core/lib/transport/transport.h +3 -0
  893. data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -6
  894. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +2 -0
  895. data/src/ruby/ext/grpc/extconf.rb +8 -9
  896. data/src/ruby/lib/grpc/version.rb +1 -1
  897. data/third_party/abseil-cpp/absl/base/config.h +1 -1
  898. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +9 -8
  899. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +1 -1
  900. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +3 -3
  901. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +10 -6
  902. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +7 -4
  903. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +6 -4
  904. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +33 -47
  905. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +9 -5
  906. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +5 -9
  907. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +4 -2
  908. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +31 -22
  909. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +29 -26
  910. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +8 -0
  911. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +189 -13
  912. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +62 -0
  913. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_openbsd.c +31 -0
  914. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +6 -4
  915. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +795 -795
  916. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +1 -5
  917. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +4 -0
  918. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +18 -6
  919. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +15 -7
  920. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +1 -1
  921. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +1 -1
  922. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +1 -0
  923. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +3 -0
  924. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +24 -24
  925. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +1 -1
  926. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +7 -7
  927. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +74 -74
  928. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +1 -2
  929. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +11 -11
  930. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c +12 -12
  931. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +14 -15
  932. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +1 -1
  933. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +10 -10
  934. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +23 -23
  935. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +13 -13
  936. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +1 -1
  937. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +2 -2
  938. data/third_party/boringssl-with-bazel/src/crypto/{hkdf → fipsmodule/hkdf}/hkdf.c +1 -1
  939. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +2 -10
  940. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +1 -4
  941. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +115 -133
  942. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +12 -14
  943. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +57 -47
  944. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +1 -8
  945. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c +27 -28
  946. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +11 -23
  947. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +21 -16
  948. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +5 -288
  949. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +143 -83
  950. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +95 -183
  951. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +71 -0
  952. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +8 -0
  953. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +33 -0
  954. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +162 -6
  955. data/third_party/boringssl-with-bazel/src/crypto/internal.h +18 -0
  956. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +32 -2
  957. data/third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c +11 -12
  958. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +833 -0
  959. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +6 -13
  960. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +18 -14
  961. data/third_party/boringssl-with-bazel/src/crypto/{refcount_lock.c → refcount_no_threads.c} +3 -13
  962. data/third_party/boringssl-with-bazel/src/crypto/refcount_win.c +89 -0
  963. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +77 -0
  964. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c +568 -0
  965. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +62 -0
  966. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +228 -56
  967. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +35 -0
  968. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +596 -49
  969. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +27 -18
  970. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +1 -1
  971. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +2 -1
  972. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +2 -1
  973. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +17 -39
  974. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +18 -14
  975. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +39 -48
  976. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +0 -140
  977. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +17 -21
  978. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +72 -23
  979. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +7 -3
  980. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +3 -4
  981. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +1 -72
  982. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +11 -14
  983. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +1 -1
  984. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +4 -2
  985. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +2 -2
  986. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +1 -1
  987. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +33 -46
  988. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +1 -0
  989. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +3 -5
  990. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +18 -49
  991. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +14 -26
  992. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +7 -3
  993. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +17 -10
  994. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +5 -3
  995. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +5 -7
  996. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +6 -4
  997. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +32 -1
  998. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -12
  999. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +1 -4
  1000. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +3 -3
  1001. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +28 -0
  1002. data/third_party/boringssl-with-bazel/src/include/openssl/kyber.h +128 -0
  1003. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +2 -11
  1004. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +8 -1
  1005. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +0 -3
  1006. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +91 -1
  1007. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +5 -0
  1008. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +149 -20
  1009. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +8 -12
  1010. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +4 -0
  1011. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +4 -0
  1012. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +8 -0
  1013. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +758 -608
  1014. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +42 -10
  1015. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +11 -6
  1016. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +2 -4
  1017. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +33 -18
  1018. data/third_party/boringssl-with-bazel/src/ssl/internal.h +82 -35
  1019. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +37 -18
  1020. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +8 -4
  1021. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +187 -193
  1022. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  1023. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +43 -92
  1024. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +85 -10
  1025. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +17 -4
  1026. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +19 -21
  1027. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +27 -19
  1028. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +2 -1
  1029. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +1 -1
  1030. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +5 -21
  1031. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +5 -2
  1032. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_msvc.h +1281 -0
  1033. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64_msvc.h +2002 -0
  1034. data/third_party/cares/cares/include/ares.h +23 -1
  1035. data/third_party/cares/cares/{src/lib → include}/ares_nameser.h +9 -7
  1036. data/third_party/cares/cares/include/ares_rules.h +2 -2
  1037. data/third_party/cares/cares/include/ares_version.h +3 -3
  1038. data/third_party/cares/cares/src/lib/ares__addrinfo2hostent.c +266 -0
  1039. data/third_party/cares/cares/src/lib/ares__addrinfo_localhost.c +240 -0
  1040. data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +49 -80
  1041. data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +37 -43
  1042. data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +12 -4
  1043. data/third_party/cares/cares/src/lib/ares_data.c +16 -0
  1044. data/third_party/cares/cares/src/lib/ares_data.h +7 -0
  1045. data/third_party/cares/cares/src/lib/ares_destroy.c +8 -0
  1046. data/third_party/cares/cares/src/lib/ares_expand_name.c +17 -6
  1047. data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +1 -0
  1048. data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +156 -78
  1049. data/third_party/cares/cares/src/lib/ares_gethostbyname.c +130 -326
  1050. data/third_party/cares/cares/src/lib/ares_init.c +97 -485
  1051. data/third_party/cares/cares/src/lib/ares_library_init.c +2 -89
  1052. data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +23 -142
  1053. data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +22 -142
  1054. data/third_party/cares/cares/src/lib/ares_parse_uri_reply.c +184 -0
  1055. data/third_party/cares/cares/src/lib/ares_private.h +30 -16
  1056. data/third_party/cares/cares/src/lib/ares_process.c +55 -16
  1057. data/third_party/cares/cares/src/lib/ares_query.c +1 -35
  1058. data/third_party/cares/cares/src/lib/ares_rand.c +279 -0
  1059. data/third_party/cares/cares/src/lib/ares_send.c +5 -7
  1060. data/third_party/cares/cares/src/lib/ares_strdup.c +12 -19
  1061. data/third_party/cares/cares/src/lib/ares_strsplit.c +44 -128
  1062. data/third_party/cares/cares/src/lib/ares_strsplit.h +9 -10
  1063. data/third_party/cares/cares/src/lib/inet_net_pton.c +78 -116
  1064. data/third_party/cares/cares/src/tools/ares_getopt.h +53 -0
  1065. data/third_party/upb/upb/{table_internal.h → alloc.h} +6 -6
  1066. data/third_party/upb/upb/arena.h +4 -193
  1067. data/third_party/upb/upb/array.h +4 -51
  1068. data/third_party/upb/upb/base/descriptor_constants.h +104 -0
  1069. data/third_party/upb/upb/base/log2.h +57 -0
  1070. data/third_party/upb/upb/{status.c → base/status.c} +2 -7
  1071. data/third_party/upb/upb/base/status.h +66 -0
  1072. data/third_party/upb/upb/base/string_view.h +75 -0
  1073. data/third_party/upb/upb/{array.c → collections/array.c} +67 -36
  1074. data/third_party/upb/upb/collections/array.h +85 -0
  1075. data/third_party/upb/upb/collections/array_internal.h +135 -0
  1076. data/third_party/upb/upb/{map.c → collections/map.c} +53 -26
  1077. data/third_party/upb/upb/collections/map.h +135 -0
  1078. data/third_party/upb/upb/collections/map_gencode_util.h +78 -0
  1079. data/third_party/upb/upb/collections/map_internal.h +170 -0
  1080. data/third_party/upb/upb/collections/map_sorter.c +166 -0
  1081. data/third_party/upb/upb/collections/map_sorter_internal.h +109 -0
  1082. data/third_party/upb/upb/{message_value.h → collections/message_value.h} +12 -13
  1083. data/third_party/upb/upb/decode.h +3 -62
  1084. data/third_party/upb/upb/def.h +4 -384
  1085. data/third_party/upb/upb/def.hpp +3 -411
  1086. data/third_party/upb/upb/encode.h +3 -48
  1087. data/third_party/upb/upb/extension_registry.h +3 -52
  1088. data/third_party/upb/upb/{table.c → hash/common.c} +52 -110
  1089. data/third_party/upb/upb/hash/common.h +199 -0
  1090. data/third_party/upb/upb/hash/int_table.h +102 -0
  1091. data/third_party/upb/upb/hash/str_table.h +161 -0
  1092. data/third_party/upb/upb/{json_decode.c → json/decode.c} +63 -98
  1093. data/third_party/upb/upb/json/decode.h +52 -0
  1094. data/third_party/upb/upb/{json_encode.c → json/encode.c} +69 -45
  1095. data/third_party/upb/upb/json/encode.h +70 -0
  1096. data/third_party/upb/upb/json_decode.h +4 -15
  1097. data/third_party/upb/upb/json_encode.h +4 -33
  1098. data/third_party/upb/upb/lex/atoi.c +68 -0
  1099. data/third_party/upb/upb/lex/atoi.h +53 -0
  1100. data/third_party/upb/upb/{upb.c → lex/round_trip.c} +2 -11
  1101. data/third_party/upb/upb/{internal/upb.h → lex/round_trip.h} +17 -30
  1102. data/third_party/upb/upb/lex/strtod.c +97 -0
  1103. data/third_party/upb/upb/lex/strtod.h +46 -0
  1104. data/third_party/upb/upb/lex/unicode.c +57 -0
  1105. data/third_party/upb/upb/lex/unicode.h +77 -0
  1106. data/third_party/upb/upb/map.h +4 -85
  1107. data/third_party/upb/upb/mem/alloc.c +47 -0
  1108. data/third_party/upb/upb/mem/alloc.h +98 -0
  1109. data/third_party/upb/upb/mem/arena.c +367 -0
  1110. data/third_party/upb/upb/mem/arena.h +160 -0
  1111. data/third_party/upb/upb/mem/arena_internal.h +114 -0
  1112. data/third_party/upb/upb/message/accessors.c +68 -0
  1113. data/third_party/upb/upb/message/accessors.h +379 -0
  1114. data/third_party/upb/upb/message/accessors_internal.h +325 -0
  1115. data/third_party/upb/upb/message/extension_internal.h +83 -0
  1116. data/third_party/upb/upb/message/internal.h +135 -0
  1117. data/third_party/upb/upb/message/message.c +180 -0
  1118. data/third_party/upb/upb/message/message.h +69 -0
  1119. data/third_party/upb/upb/mini_table/common.c +128 -0
  1120. data/third_party/upb/upb/mini_table/common.h +170 -0
  1121. data/third_party/upb/upb/mini_table/common_internal.h +111 -0
  1122. data/third_party/upb/upb/{mini_table.c → mini_table/decode.c} +513 -533
  1123. data/third_party/upb/upb/mini_table/decode.h +179 -0
  1124. data/third_party/upb/upb/mini_table/encode.c +300 -0
  1125. data/third_party/upb/upb/mini_table/encode_internal.h +111 -0
  1126. data/third_party/upb/upb/{mini_table.hpp → mini_table/encode_internal.hpp} +32 -8
  1127. data/third_party/upb/upb/mini_table/enum_internal.h +88 -0
  1128. data/third_party/upb/upb/mini_table/extension_internal.h +47 -0
  1129. data/third_party/upb/upb/{extension_registry.c → mini_table/extension_registry.c} +27 -24
  1130. data/third_party/upb/upb/mini_table/extension_registry.h +104 -0
  1131. data/third_party/upb/upb/mini_table/field_internal.h +192 -0
  1132. data/third_party/upb/upb/mini_table/file_internal.h +47 -0
  1133. data/third_party/upb/upb/mini_table/message_internal.h +136 -0
  1134. data/third_party/upb/upb/mini_table/sub_internal.h +38 -0
  1135. data/third_party/upb/upb/mini_table/types.h +40 -0
  1136. data/third_party/upb/upb/mini_table.h +4 -157
  1137. data/third_party/upb/upb/msg.h +3 -38
  1138. data/third_party/upb/upb/port/atomic.h +101 -0
  1139. data/third_party/upb/upb/{port_def.inc → port/def.inc} +94 -27
  1140. data/third_party/upb/upb/{port_undef.inc → port/undef.inc} +13 -3
  1141. data/third_party/upb/upb/{internal → port}/vsnprintf_compat.h +5 -7
  1142. data/third_party/upb/upb/reflection/common.h +67 -0
  1143. data/third_party/upb/upb/reflection/def.h +42 -0
  1144. data/third_party/upb/upb/reflection/def.hpp +610 -0
  1145. data/third_party/upb/upb/reflection/def_builder.c +357 -0
  1146. data/third_party/upb/upb/reflection/def_builder_internal.h +157 -0
  1147. data/third_party/upb/upb/reflection/def_pool.c +462 -0
  1148. data/third_party/upb/upb/reflection/def_pool.h +108 -0
  1149. data/third_party/upb/upb/reflection/def_pool_internal.h +77 -0
  1150. data/third_party/upb/upb/reflection/def_type.c +50 -0
  1151. data/third_party/upb/upb/reflection/def_type.h +81 -0
  1152. data/third_party/upb/upb/reflection/desc_state.c +53 -0
  1153. data/third_party/upb/upb/reflection/desc_state_internal.h +64 -0
  1154. data/third_party/upb/upb/reflection/enum_def.c +310 -0
  1155. data/third_party/upb/upb/reflection/enum_def.h +80 -0
  1156. data/third_party/upb/upb/reflection/enum_def_internal.h +56 -0
  1157. data/third_party/upb/upb/reflection/enum_reserved_range.c +84 -0
  1158. data/third_party/upb/upb/reflection/enum_reserved_range.h +51 -0
  1159. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +55 -0
  1160. data/third_party/upb/upb/reflection/enum_value_def.c +144 -0
  1161. data/third_party/upb/upb/reflection/enum_value_def.h +57 -0
  1162. data/third_party/upb/upb/reflection/enum_value_def_internal.h +57 -0
  1163. data/third_party/upb/upb/reflection/extension_range.c +93 -0
  1164. data/third_party/upb/upb/reflection/extension_range.h +55 -0
  1165. data/third_party/upb/upb/reflection/extension_range_internal.h +54 -0
  1166. data/third_party/upb/upb/reflection/field_def.c +930 -0
  1167. data/third_party/upb/upb/reflection/field_def.h +91 -0
  1168. data/third_party/upb/upb/reflection/field_def_internal.h +76 -0
  1169. data/third_party/upb/upb/reflection/file_def.c +370 -0
  1170. data/third_party/upb/upb/reflection/file_def.h +77 -0
  1171. data/third_party/upb/upb/reflection/file_def_internal.h +57 -0
  1172. data/third_party/upb/upb/reflection/message.c +233 -0
  1173. data/third_party/upb/upb/reflection/message.h +102 -0
  1174. data/third_party/upb/upb/reflection/message.hpp +37 -0
  1175. data/third_party/upb/upb/reflection/message_def.c +718 -0
  1176. data/third_party/upb/upb/reflection/message_def.h +174 -0
  1177. data/third_party/upb/upb/reflection/message_def_internal.h +63 -0
  1178. data/third_party/upb/upb/reflection/message_reserved_range.c +81 -0
  1179. data/third_party/upb/upb/reflection/message_reserved_range.h +51 -0
  1180. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +55 -0
  1181. data/third_party/upb/upb/reflection/method_def.c +124 -0
  1182. data/third_party/upb/upb/reflection/method_def.h +59 -0
  1183. data/third_party/upb/upb/reflection/method_def_internal.h +53 -0
  1184. data/third_party/upb/upb/reflection/oneof_def.c +226 -0
  1185. data/third_party/upb/upb/reflection/oneof_def.h +66 -0
  1186. data/third_party/upb/upb/reflection/oneof_def_internal.h +57 -0
  1187. data/third_party/upb/upb/reflection/service_def.c +128 -0
  1188. data/third_party/upb/upb/reflection/service_def.h +60 -0
  1189. data/third_party/upb/upb/reflection/service_def_internal.h +53 -0
  1190. data/third_party/upb/upb/reflection.h +4 -78
  1191. data/third_party/upb/upb/reflection.hpp +3 -7
  1192. data/third_party/upb/upb/status.h +4 -34
  1193. data/third_party/upb/upb/{collections.h → string_view.h} +7 -7
  1194. data/third_party/upb/upb/{text_encode.c → text/encode.c} +74 -70
  1195. data/third_party/upb/upb/text/encode.h +69 -0
  1196. data/third_party/upb/upb/text_encode.h +4 -32
  1197. data/third_party/upb/upb/upb.h +6 -151
  1198. data/third_party/upb/upb/upb.hpp +10 -18
  1199. data/third_party/upb/upb/wire/common.h +44 -0
  1200. data/third_party/upb/upb/wire/common_internal.h +50 -0
  1201. data/third_party/upb/upb/wire/decode.c +1343 -0
  1202. data/third_party/upb/upb/wire/decode.h +108 -0
  1203. data/third_party/upb/upb/{decode_fast.c → wire/decode_fast.c} +184 -225
  1204. data/third_party/upb/upb/{decode_fast.h → wire/decode_fast.h} +21 -7
  1205. data/third_party/upb/upb/{internal/decode.h → wire/decode_internal.h} +44 -92
  1206. data/third_party/upb/upb/{encode.c → wire/encode.c} +114 -95
  1207. data/third_party/upb/upb/wire/encode.h +92 -0
  1208. data/third_party/upb/upb/wire/eps_copy_input_stream.c +39 -0
  1209. data/third_party/upb/upb/wire/eps_copy_input_stream.h +425 -0
  1210. data/third_party/upb/upb/wire/reader.c +67 -0
  1211. data/third_party/upb/upb/wire/reader.h +227 -0
  1212. data/third_party/upb/upb/wire/swap_internal.h +63 -0
  1213. data/third_party/upb/upb/wire/types.h +41 -0
  1214. data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-neon.c +1 -1
  1215. data/third_party/{upb/third_party/utf8_range → utf8_range}/utf8_range.h +12 -0
  1216. metadata +202 -51
  1217. data/src/core/ext/filters/client_channel/health/health_check_client.cc +0 -175
  1218. data/src/core/ext/filters/client_channel/health/health_check_client.h +0 -43
  1219. data/src/core/ext/transport/chttp2/transport/context_list.cc +0 -71
  1220. data/src/core/ext/transport/chttp2/transport/context_list.h +0 -54
  1221. data/third_party/cares/cares/src/lib/ares_library_init.h +0 -43
  1222. data/third_party/upb/upb/arena.c +0 -277
  1223. data/third_party/upb/upb/decode.c +0 -1221
  1224. data/third_party/upb/upb/def.c +0 -3269
  1225. data/third_party/upb/upb/internal/table.h +0 -385
  1226. data/third_party/upb/upb/msg.c +0 -368
  1227. data/third_party/upb/upb/msg_internal.h +0 -837
  1228. data/third_party/upb/upb/reflection.c +0 -323
  1229. /data/third_party/{upb/third_party/utf8_range → utf8_range}/naive.c +0 -0
  1230. /data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-sse.c +0 -0
@@ -0,0 +1,81 @@
1
+ /*
2
+ * Copyright (c) 2009-2021, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #ifndef UPB_REFLECTION_DEF_TYPE_H_
29
+ #define UPB_REFLECTION_DEF_TYPE_H_
30
+
31
+ #include "upb/hash/common.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ // Inside a symtab we store tagged pointers to specific def types.
37
+ typedef enum {
38
+ UPB_DEFTYPE_MASK = 7,
39
+
40
+ // Only inside symtab table.
41
+ UPB_DEFTYPE_EXT = 0,
42
+ UPB_DEFTYPE_MSG = 1,
43
+ UPB_DEFTYPE_ENUM = 2,
44
+ UPB_DEFTYPE_ENUMVAL = 3,
45
+ UPB_DEFTYPE_SERVICE = 4,
46
+
47
+ // Only inside message table.
48
+ UPB_DEFTYPE_FIELD = 0,
49
+ UPB_DEFTYPE_ONEOF = 1,
50
+ UPB_DEFTYPE_FIELD_JSONNAME = 2,
51
+ } upb_deftype_t;
52
+
53
+ #ifdef __cplusplus
54
+ extern "C" {
55
+ #endif
56
+
57
+ // Our 3-bit pointer tagging requires all pointers to be multiples of 8.
58
+ // The arena will always yield 8-byte-aligned addresses, however we put
59
+ // the defs into arrays. For each element in the array to be 8-byte-aligned,
60
+ // the sizes of each def type must also be a multiple of 8.
61
+ //
62
+ // If any of these asserts fail, we need to add or remove padding on 32-bit
63
+ // machines (64-bit machines will have 8-byte alignment already due to
64
+ // pointers, which all of these structs have).
65
+ UPB_INLINE void _upb_DefType_CheckPadding(size_t size) {
66
+ UPB_ASSERT((size & UPB_DEFTYPE_MASK) == 0);
67
+ }
68
+
69
+ upb_deftype_t _upb_DefType_Type(upb_value v);
70
+
71
+ upb_value _upb_DefType_Pack(const void* ptr, upb_deftype_t type);
72
+
73
+ const void* _upb_DefType_Unpack(upb_value v, upb_deftype_t type);
74
+
75
+ #ifdef __cplusplus
76
+ } /* extern "C" */
77
+ #endif
78
+
79
+ #include "upb/port/undef.inc"
80
+
81
+ #endif /* UPB_REFLECTION_DEF_TYPE_H_ */
@@ -0,0 +1,53 @@
1
+ /*
2
+ * Copyright (c) 2009-2022, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #include "upb/reflection/desc_state_internal.h"
29
+
30
+ // Must be last.
31
+ #include "upb/port/def.inc"
32
+
33
+ bool _upb_DescState_Grow(upb_DescState* d, upb_Arena* a) {
34
+ const size_t oldbufsize = d->bufsize;
35
+ const int used = d->ptr - d->buf;
36
+
37
+ if (!d->buf) {
38
+ d->buf = upb_Arena_Malloc(a, d->bufsize);
39
+ if (!d->buf) return false;
40
+ d->ptr = d->buf;
41
+ d->e.end = d->buf + d->bufsize;
42
+ }
43
+
44
+ if (oldbufsize - used < kUpb_MtDataEncoder_MinSize) {
45
+ d->bufsize *= 2;
46
+ d->buf = upb_Arena_Realloc(a, d->buf, oldbufsize, d->bufsize);
47
+ if (!d->buf) return false;
48
+ d->ptr = d->buf + used;
49
+ d->e.end = d->buf + d->bufsize;
50
+ }
51
+
52
+ return true;
53
+ }
@@ -0,0 +1,64 @@
1
+ /*
2
+ * Copyright (c) 2009-2022, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #ifndef UPB_REFLECTION_DESC_STATE_INTERNAL_H_
29
+ #define UPB_REFLECTION_DESC_STATE_INTERNAL_H_
30
+
31
+ #include "upb/mem/arena.h"
32
+ #include "upb/mini_table/encode_internal.h"
33
+
34
+ // Must be last.
35
+ #include "upb/port/def.inc"
36
+
37
+ // Manages the storage for mini descriptor strings as they are being encoded.
38
+ // TODO(b/234740652): Move some of this state directly into the encoder, maybe.
39
+ typedef struct {
40
+ upb_MtDataEncoder e;
41
+ size_t bufsize;
42
+ char* buf;
43
+ char* ptr;
44
+ } upb_DescState;
45
+
46
+ #ifdef __cplusplus
47
+ extern "C" {
48
+ #endif
49
+
50
+ UPB_INLINE void _upb_DescState_Init(upb_DescState* d) {
51
+ d->bufsize = kUpb_MtDataEncoder_MinSize * 2;
52
+ d->buf = NULL;
53
+ d->ptr = NULL;
54
+ }
55
+
56
+ bool _upb_DescState_Grow(upb_DescState* d, upb_Arena* a);
57
+
58
+ #ifdef __cplusplus
59
+ } /* extern "C" */
60
+ #endif
61
+
62
+ #include "upb/port/undef.inc"
63
+
64
+ #endif /* UPB_REFLECTION_DESC_STATE_INTERNAL_H_ */
@@ -0,0 +1,310 @@
1
+ /*
2
+ * Copyright (c) 2009-2021, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #include "upb/hash/int_table.h"
29
+ #include "upb/hash/str_table.h"
30
+ #include "upb/mini_table/decode.h"
31
+ #include "upb/reflection/def_builder_internal.h"
32
+ #include "upb/reflection/def_type.h"
33
+ #include "upb/reflection/desc_state_internal.h"
34
+ #include "upb/reflection/enum_def_internal.h"
35
+ #include "upb/reflection/enum_reserved_range_internal.h"
36
+ #include "upb/reflection/enum_value_def_internal.h"
37
+ #include "upb/reflection/file_def_internal.h"
38
+ #include "upb/reflection/message_def_internal.h"
39
+
40
+ // Must be last.
41
+ #include "upb/port/def.inc"
42
+
43
+ struct upb_EnumDef {
44
+ const UPB_DESC(EnumOptions) * opts;
45
+ const upb_MiniTableEnum* layout; // Only for proto2.
46
+ const upb_FileDef* file;
47
+ const upb_MessageDef* containing_type; // Could be merged with "file".
48
+ const char* full_name;
49
+ upb_strtable ntoi;
50
+ upb_inttable iton;
51
+ const upb_EnumValueDef* values;
52
+ const upb_EnumReservedRange* res_ranges;
53
+ const upb_StringView* res_names;
54
+ int value_count;
55
+ int res_range_count;
56
+ int res_name_count;
57
+ int32_t defaultval;
58
+ bool is_closed;
59
+ bool is_sorted; // Whether all of the values are defined in ascending order.
60
+ };
61
+
62
+ upb_EnumDef* _upb_EnumDef_At(const upb_EnumDef* e, int i) {
63
+ return (upb_EnumDef*)&e[i];
64
+ }
65
+
66
+ const upb_MiniTableEnum* _upb_EnumDef_MiniTable(const upb_EnumDef* e) {
67
+ return e->layout;
68
+ }
69
+
70
+ bool _upb_EnumDef_Insert(upb_EnumDef* e, upb_EnumValueDef* v, upb_Arena* a) {
71
+ const char* name = upb_EnumValueDef_Name(v);
72
+ const upb_value val = upb_value_constptr(v);
73
+ bool ok = upb_strtable_insert(&e->ntoi, name, strlen(name), val, a);
74
+ if (!ok) return false;
75
+
76
+ // Multiple enumerators can have the same number, first one wins.
77
+ const int number = upb_EnumValueDef_Number(v);
78
+ if (!upb_inttable_lookup(&e->iton, number, NULL)) {
79
+ return upb_inttable_insert(&e->iton, number, val, a);
80
+ }
81
+ return true;
82
+ }
83
+
84
+ const UPB_DESC(EnumOptions) * upb_EnumDef_Options(const upb_EnumDef* e) {
85
+ return e->opts;
86
+ }
87
+
88
+ bool upb_EnumDef_HasOptions(const upb_EnumDef* e) {
89
+ return e->opts != (void*)kUpbDefOptDefault;
90
+ }
91
+
92
+ const char* upb_EnumDef_FullName(const upb_EnumDef* e) { return e->full_name; }
93
+
94
+ const char* upb_EnumDef_Name(const upb_EnumDef* e) {
95
+ return _upb_DefBuilder_FullToShort(e->full_name);
96
+ }
97
+
98
+ const upb_FileDef* upb_EnumDef_File(const upb_EnumDef* e) { return e->file; }
99
+
100
+ const upb_MessageDef* upb_EnumDef_ContainingType(const upb_EnumDef* e) {
101
+ return e->containing_type;
102
+ }
103
+
104
+ int32_t upb_EnumDef_Default(const upb_EnumDef* e) {
105
+ UPB_ASSERT(upb_EnumDef_FindValueByNumber(e, e->defaultval));
106
+ return e->defaultval;
107
+ }
108
+
109
+ int upb_EnumDef_ReservedRangeCount(const upb_EnumDef* e) {
110
+ return e->res_range_count;
111
+ }
112
+
113
+ const upb_EnumReservedRange* upb_EnumDef_ReservedRange(const upb_EnumDef* e,
114
+ int i) {
115
+ UPB_ASSERT(0 <= i && i < e->res_range_count);
116
+ return _upb_EnumReservedRange_At(e->res_ranges, i);
117
+ }
118
+
119
+ int upb_EnumDef_ReservedNameCount(const upb_EnumDef* e) {
120
+ return e->res_name_count;
121
+ }
122
+
123
+ upb_StringView upb_EnumDef_ReservedName(const upb_EnumDef* e, int i) {
124
+ UPB_ASSERT(0 <= i && i < e->res_name_count);
125
+ return e->res_names[i];
126
+ }
127
+
128
+ int upb_EnumDef_ValueCount(const upb_EnumDef* e) { return e->value_count; }
129
+
130
+ const upb_EnumValueDef* upb_EnumDef_FindValueByName(const upb_EnumDef* e,
131
+ const char* name) {
132
+ return upb_EnumDef_FindValueByNameWithSize(e, name, strlen(name));
133
+ }
134
+
135
+ const upb_EnumValueDef* upb_EnumDef_FindValueByNameWithSize(
136
+ const upb_EnumDef* e, const char* name, size_t size) {
137
+ upb_value v;
138
+ return upb_strtable_lookup2(&e->ntoi, name, size, &v)
139
+ ? upb_value_getconstptr(v)
140
+ : NULL;
141
+ }
142
+
143
+ const upb_EnumValueDef* upb_EnumDef_FindValueByNumber(const upb_EnumDef* e,
144
+ int32_t num) {
145
+ upb_value v;
146
+ return upb_inttable_lookup(&e->iton, num, &v) ? upb_value_getconstptr(v)
147
+ : NULL;
148
+ }
149
+
150
+ bool upb_EnumDef_CheckNumber(const upb_EnumDef* e, int32_t num) {
151
+ // We could use upb_EnumDef_FindValueByNumber(e, num) != NULL, but we expect
152
+ // this to be faster (especially for small numbers).
153
+ return upb_MiniTableEnum_CheckValue(e->layout, num);
154
+ }
155
+
156
+ const upb_EnumValueDef* upb_EnumDef_Value(const upb_EnumDef* e, int i) {
157
+ UPB_ASSERT(0 <= i && i < e->value_count);
158
+ return _upb_EnumValueDef_At(e->values, i);
159
+ }
160
+
161
+ bool upb_EnumDef_IsClosed(const upb_EnumDef* e) { return e->is_closed; }
162
+
163
+ bool upb_EnumDef_MiniDescriptorEncode(const upb_EnumDef* e, upb_Arena* a,
164
+ upb_StringView* out) {
165
+ upb_DescState s;
166
+ _upb_DescState_Init(&s);
167
+
168
+ const upb_EnumValueDef** sorted = NULL;
169
+ if (!e->is_sorted) {
170
+ sorted = _upb_EnumValueDefs_Sorted(e->values, e->value_count, a);
171
+ if (!sorted) return false;
172
+ }
173
+
174
+ if (!_upb_DescState_Grow(&s, a)) return false;
175
+ s.ptr = upb_MtDataEncoder_StartEnum(&s.e, s.ptr);
176
+
177
+ // Duplicate values are allowed but we only encode each value once.
178
+ uint32_t previous = 0;
179
+
180
+ for (size_t i = 0; i < e->value_count; i++) {
181
+ const uint32_t current =
182
+ upb_EnumValueDef_Number(sorted ? sorted[i] : upb_EnumDef_Value(e, i));
183
+ if (i != 0 && previous == current) continue;
184
+
185
+ if (!_upb_DescState_Grow(&s, a)) return false;
186
+ s.ptr = upb_MtDataEncoder_PutEnumValue(&s.e, s.ptr, current);
187
+ previous = current;
188
+ }
189
+
190
+ if (!_upb_DescState_Grow(&s, a)) return false;
191
+ s.ptr = upb_MtDataEncoder_EndEnum(&s.e, s.ptr);
192
+
193
+ // There will always be room for this '\0' in the encoder buffer because
194
+ // kUpb_MtDataEncoder_MinSize is overkill for upb_MtDataEncoder_EndEnum().
195
+ UPB_ASSERT(s.ptr < s.buf + s.bufsize);
196
+ *s.ptr = '\0';
197
+
198
+ out->data = s.buf;
199
+ out->size = s.ptr - s.buf;
200
+ return true;
201
+ }
202
+
203
+ static upb_MiniTableEnum* create_enumlayout(upb_DefBuilder* ctx,
204
+ const upb_EnumDef* e) {
205
+ upb_StringView sv;
206
+ bool ok = upb_EnumDef_MiniDescriptorEncode(e, ctx->tmp_arena, &sv);
207
+ if (!ok) _upb_DefBuilder_Errf(ctx, "OOM while building enum MiniDescriptor");
208
+
209
+ upb_Status status;
210
+ upb_MiniTableEnum* layout =
211
+ upb_MiniTableEnum_Build(sv.data, sv.size, ctx->arena, &status);
212
+ if (!layout)
213
+ _upb_DefBuilder_Errf(ctx, "Error building enum MiniTable: %s", status.msg);
214
+ return layout;
215
+ }
216
+
217
+ static upb_StringView* _upb_EnumReservedNames_New(
218
+ upb_DefBuilder* ctx, int n, const upb_StringView* protos) {
219
+ upb_StringView* sv = _upb_DefBuilder_Alloc(ctx, sizeof(upb_StringView) * n);
220
+ for (size_t i = 0; i < n; i++) {
221
+ sv[i].data =
222
+ upb_strdup2(protos[i].data, protos[i].size, _upb_DefBuilder_Arena(ctx));
223
+ sv[i].size = protos[i].size;
224
+ }
225
+ return sv;
226
+ }
227
+
228
+ static void create_enumdef(upb_DefBuilder* ctx, const char* prefix,
229
+ const UPB_DESC(EnumDescriptorProto) * enum_proto,
230
+ upb_EnumDef* e) {
231
+ const UPB_DESC(EnumValueDescriptorProto)* const* values;
232
+ const UPB_DESC(EnumDescriptorProto_EnumReservedRange)* const* res_ranges;
233
+ const upb_StringView* res_names;
234
+ upb_StringView name;
235
+ size_t n_value, n_res_range, n_res_name;
236
+
237
+ // Must happen before _upb_DefBuilder_Add()
238
+ e->file = _upb_DefBuilder_File(ctx);
239
+
240
+ name = UPB_DESC(EnumDescriptorProto_name)(enum_proto);
241
+
242
+ e->full_name = _upb_DefBuilder_MakeFullName(ctx, prefix, name);
243
+ _upb_DefBuilder_Add(ctx, e->full_name,
244
+ _upb_DefType_Pack(e, UPB_DEFTYPE_ENUM));
245
+
246
+ e->is_closed = (!UPB_TREAT_PROTO2_ENUMS_LIKE_PROTO3) &&
247
+ (upb_FileDef_Syntax(e->file) == kUpb_Syntax_Proto2);
248
+
249
+ values = UPB_DESC(EnumDescriptorProto_value)(enum_proto, &n_value);
250
+
251
+ bool ok = upb_strtable_init(&e->ntoi, n_value, ctx->arena);
252
+ if (!ok) _upb_DefBuilder_OomErr(ctx);
253
+
254
+ ok = upb_inttable_init(&e->iton, ctx->arena);
255
+ if (!ok) _upb_DefBuilder_OomErr(ctx);
256
+
257
+ e->defaultval = 0;
258
+ e->value_count = n_value;
259
+ e->values =
260
+ _upb_EnumValueDefs_New(ctx, prefix, n_value, values, e, &e->is_sorted);
261
+
262
+ if (n_value == 0) {
263
+ _upb_DefBuilder_Errf(ctx, "enums must contain at least one value (%s)",
264
+ e->full_name);
265
+ }
266
+
267
+ res_ranges =
268
+ UPB_DESC(EnumDescriptorProto_reserved_range)(enum_proto, &n_res_range);
269
+ e->res_range_count = n_res_range;
270
+ e->res_ranges = _upb_EnumReservedRanges_New(ctx, n_res_range, res_ranges, e);
271
+
272
+ res_names =
273
+ UPB_DESC(EnumDescriptorProto_reserved_name)(enum_proto, &n_res_name);
274
+ e->res_name_count = n_res_name;
275
+ e->res_names = _upb_EnumReservedNames_New(ctx, n_res_name, res_names);
276
+
277
+ UPB_DEF_SET_OPTIONS(e->opts, EnumDescriptorProto, EnumOptions, enum_proto);
278
+
279
+ upb_inttable_compact(&e->iton, ctx->arena);
280
+
281
+ if (e->is_closed) {
282
+ if (ctx->layout) {
283
+ UPB_ASSERT(ctx->enum_count < ctx->layout->enum_count);
284
+ e->layout = ctx->layout->enums[ctx->enum_count++];
285
+ } else {
286
+ e->layout = create_enumlayout(ctx, e);
287
+ }
288
+ } else {
289
+ e->layout = NULL;
290
+ }
291
+ }
292
+
293
+ upb_EnumDef* _upb_EnumDefs_New(
294
+ upb_DefBuilder* ctx, int n,
295
+ const UPB_DESC(EnumDescriptorProto) * const* protos,
296
+ const upb_MessageDef* containing_type) {
297
+ _upb_DefType_CheckPadding(sizeof(upb_EnumDef));
298
+
299
+ // If a containing type is defined then get the full name from that.
300
+ // Otherwise use the package name from the file def.
301
+ const char* name = containing_type ? upb_MessageDef_FullName(containing_type)
302
+ : _upb_FileDef_RawPackage(ctx->file);
303
+
304
+ upb_EnumDef* e = _upb_DefBuilder_Alloc(ctx, sizeof(upb_EnumDef) * n);
305
+ for (size_t i = 0; i < n; i++) {
306
+ create_enumdef(ctx, name, protos[i], &e[i]);
307
+ e[i].containing_type = containing_type;
308
+ }
309
+ return e;
310
+ }
@@ -0,0 +1,80 @@
1
+ /*
2
+ * Copyright (c) 2009-2021, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ // IWYU pragma: private, include "upb/reflection/def.h"
29
+
30
+ #ifndef UPB_REFLECTION_ENUM_DEF_H_
31
+ #define UPB_REFLECTION_ENUM_DEF_H_
32
+
33
+ #include "upb/base/string_view.h"
34
+ #include "upb/reflection/common.h"
35
+
36
+ // Must be last.
37
+ #include "upb/port/def.inc"
38
+
39
+ #ifdef __cplusplus
40
+ extern "C" {
41
+ #endif
42
+
43
+ bool upb_EnumDef_CheckNumber(const upb_EnumDef* e, int32_t num);
44
+ const upb_MessageDef* upb_EnumDef_ContainingType(const upb_EnumDef* e);
45
+ int32_t upb_EnumDef_Default(const upb_EnumDef* e);
46
+ const upb_FileDef* upb_EnumDef_File(const upb_EnumDef* e);
47
+ const upb_EnumValueDef* upb_EnumDef_FindValueByName(const upb_EnumDef* e,
48
+ const char* name);
49
+ const upb_EnumValueDef* upb_EnumDef_FindValueByNameWithSize(
50
+ const upb_EnumDef* e, const char* name, size_t size);
51
+ const upb_EnumValueDef* upb_EnumDef_FindValueByNumber(const upb_EnumDef* e,
52
+ int32_t num);
53
+ const char* upb_EnumDef_FullName(const upb_EnumDef* e);
54
+ bool upb_EnumDef_HasOptions(const upb_EnumDef* e);
55
+ bool upb_EnumDef_IsClosed(const upb_EnumDef* e);
56
+
57
+ // Creates a mini descriptor string for an enum, returns true on success.
58
+ bool upb_EnumDef_MiniDescriptorEncode(const upb_EnumDef* e, upb_Arena* a,
59
+ upb_StringView* out);
60
+
61
+ const char* upb_EnumDef_Name(const upb_EnumDef* e);
62
+ const UPB_DESC(EnumOptions) * upb_EnumDef_Options(const upb_EnumDef* e);
63
+
64
+ upb_StringView upb_EnumDef_ReservedName(const upb_EnumDef* e, int i);
65
+ int upb_EnumDef_ReservedNameCount(const upb_EnumDef* e);
66
+
67
+ const upb_EnumReservedRange* upb_EnumDef_ReservedRange(const upb_EnumDef* e,
68
+ int i);
69
+ int upb_EnumDef_ReservedRangeCount(const upb_EnumDef* e);
70
+
71
+ const upb_EnumValueDef* upb_EnumDef_Value(const upb_EnumDef* e, int i);
72
+ int upb_EnumDef_ValueCount(const upb_EnumDef* e);
73
+
74
+ #ifdef __cplusplus
75
+ } /* extern "C" */
76
+ #endif
77
+
78
+ #include "upb/port/undef.inc"
79
+
80
+ #endif /* UPB_REFLECTION_ENUM_DEF_H_ */
@@ -0,0 +1,56 @@
1
+ /*
2
+ * Copyright (c) 2009-2021, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #ifndef UPB_REFLECTION_ENUM_DEF_INTERNAL_H_
29
+ #define UPB_REFLECTION_ENUM_DEF_INTERNAL_H_
30
+
31
+ #include "upb/reflection/enum_def.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ #ifdef __cplusplus
37
+ extern "C" {
38
+ #endif
39
+
40
+ upb_EnumDef* _upb_EnumDef_At(const upb_EnumDef* e, int i);
41
+ bool _upb_EnumDef_Insert(upb_EnumDef* e, upb_EnumValueDef* v, upb_Arena* a);
42
+ const upb_MiniTableEnum* _upb_EnumDef_MiniTable(const upb_EnumDef* e);
43
+
44
+ // Allocate and initialize an array of |n| enum defs.
45
+ upb_EnumDef* _upb_EnumDefs_New(
46
+ upb_DefBuilder* ctx, int n,
47
+ const UPB_DESC(EnumDescriptorProto) * const* protos,
48
+ const upb_MessageDef* containing_type);
49
+
50
+ #ifdef __cplusplus
51
+ } /* extern "C" */
52
+ #endif
53
+
54
+ #include "upb/port/undef.inc"
55
+
56
+ #endif /* UPB_REFLECTION_ENUM_DEF_INTERNAL_H_ */