grpc 1.54.2 → 1.55.0

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

Potentially problematic release.


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

Files changed (956) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +66 -37
  3. data/include/grpc/impl/grpc_types.h +2 -0
  4. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +1 -1
  5. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -1
  6. data/src/core/ext/filters/client_channel/client_channel.cc +13 -17
  7. data/src/core/ext/filters/client_channel/client_channel.h +20 -16
  8. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +1 -1
  9. data/src/core/ext/filters/client_channel/client_channel_internal.h +8 -40
  10. data/src/core/ext/filters/client_channel/client_channel_service_config.cc +2 -2
  11. data/src/core/ext/filters/client_channel/config_selector.h +5 -17
  12. data/src/core/ext/filters/client_channel/health/health_check_client.cc +1 -1
  13. data/src/core/ext/filters/client_channel/http_proxy.cc +34 -1
  14. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +2 -2
  15. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +1 -1
  16. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  17. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +5 -5
  18. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +3 -3
  19. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +44 -45
  20. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +2 -3
  21. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +3 -3
  22. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +3 -3
  23. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +4 -4
  24. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +3 -3
  25. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +9 -9
  26. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +4 -4
  27. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +5 -4
  28. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +19 -118
  29. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h +30 -0
  30. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +60 -0
  31. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h +27 -0
  32. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +524 -0
  33. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h +35 -0
  34. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc +97 -0
  35. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h +32 -0
  36. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +2 -13
  37. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h +24 -0
  38. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +3 -2
  39. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +7 -34
  40. data/src/core/ext/filters/client_channel/retry_filter.cc +23 -55
  41. data/src/core/ext/filters/client_channel/retry_service_config.cc +8 -8
  42. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +1 -1
  43. data/src/core/ext/filters/http/message_compress/compression_filter.cc +2 -2
  44. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +68 -69
  45. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +78 -23
  46. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +21 -0
  47. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +70 -0
  48. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -7
  49. data/src/core/ext/transport/chttp2/transport/frame_ping.h +0 -3
  50. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +1 -0
  51. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -0
  52. data/src/core/ext/transport/chttp2/transport/internal.h +3 -4
  53. data/src/core/ext/transport/chttp2/transport/writing.cc +14 -3
  54. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +87 -52
  55. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +414 -181
  56. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -60
  57. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +481 -224
  58. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +90 -55
  59. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +415 -188
  60. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +357 -210
  61. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1572 -729
  62. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +30 -17
  63. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +144 -47
  64. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +34 -21
  65. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -62
  66. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +27 -14
  67. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +78 -38
  68. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +20 -11
  69. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +48 -26
  70. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +20 -11
  71. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +48 -26
  72. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +109 -62
  73. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +566 -244
  74. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +21 -12
  75. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +45 -30
  76. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +22 -19
  77. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +82 -29
  78. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +23 -16
  79. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +45 -30
  80. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +230 -143
  81. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +733 -404
  82. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +417 -264
  83. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1839 -899
  84. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -41
  85. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +286 -148
  86. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +531 -334
  87. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2017 -1131
  88. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -12
  89. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +45 -30
  90. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +89 -52
  91. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +347 -232
  92. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +264 -165
  93. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +888 -476
  94. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +139 -80
  95. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +527 -274
  96. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -13
  97. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +50 -36
  98. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +380 -221
  99. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1168 -611
  100. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +166 -94
  101. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +666 -292
  102. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +18 -11
  103. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +37 -26
  104. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +21 -12
  105. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +45 -30
  106. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +30 -17
  107. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +144 -47
  108. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +274 -167
  109. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +789 -440
  110. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +228 -137
  111. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +1100 -501
  112. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -13
  113. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +60 -37
  114. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +350 -211
  115. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1072 -646
  116. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +33 -18
  117. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +117 -51
  118. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +34 -19
  119. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +118 -56
  120. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +38 -21
  121. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +148 -64
  122. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +31 -18
  123. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +143 -65
  124. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +22 -13
  125. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +51 -37
  126. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +78 -43
  127. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +265 -127
  128. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +145 -88
  129. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +438 -241
  130. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +115 -62
  131. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +559 -227
  132. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +18 -11
  133. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +35 -26
  134. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +175 -118
  135. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +857 -442
  136. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +172 -95
  137. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +864 -374
  138. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -27
  139. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +159 -110
  140. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +39 -18
  141. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +74 -56
  142. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +28 -15
  143. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +71 -45
  144. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +131 -74
  145. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +489 -249
  146. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +135 -80
  147. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +505 -245
  148. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +248 -139
  149. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +933 -433
  150. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +80 -49
  151. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +616 -201
  152. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +1283 -776
  153. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +5422 -2519
  154. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +49 -28
  155. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +164 -84
  156. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +228 -141
  157. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +738 -399
  158. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +20 -11
  159. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +48 -26
  160. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +21 -12
  161. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +45 -30
  162. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +32 -19
  163. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +70 -49
  164. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +27 -14
  165. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +110 -43
  166. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +46 -25
  167. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +259 -100
  168. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +21 -12
  169. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +45 -30
  170. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +18 -11
  171. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +35 -26
  172. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +42 -23
  173. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +108 -70
  174. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +7 -4
  175. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +21 -16
  176. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +43 -24
  177. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +110 -75
  178. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +30 -17
  179. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +95 -50
  180. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +16 -9
  181. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -23
  182. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +60 -37
  183. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +150 -108
  184. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +74 -43
  185. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +357 -167
  186. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +44 -25
  187. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +114 -80
  188. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +41 -20
  189. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +245 -82
  190. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +32 -19
  191. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +73 -51
  192. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +474 -296
  193. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2121 -1076
  194. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +18 -11
  195. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +35 -26
  196. 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
  197. 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
  198. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +72 -45
  199. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +193 -138
  200. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +34 -21
  201. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +119 -78
  202. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +18 -11
  203. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +35 -26
  204. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +7 -4
  205. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +15 -10
  206. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +184 -96
  207. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +907 -360
  208. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +56 -33
  209. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -101
  210. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +188 -111
  211. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +816 -419
  212. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +32 -19
  213. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +109 -53
  214. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +10 -7
  215. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +18 -14
  216. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +300 -177
  217. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +1284 -522
  218. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +42 -23
  219. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +188 -75
  220. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +130 -83
  221. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +510 -238
  222. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +22 -13
  223. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +55 -34
  224. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +39 -26
  225. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +124 -68
  226. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +21 -12
  227. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +47 -30
  228. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +52 -29
  229. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +92 -62
  230. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +37 -20
  231. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +133 -63
  232. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +22 -13
  233. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +91 -40
  234. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -12
  235. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +50 -32
  236. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +18 -11
  237. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +37 -26
  238. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +46 -27
  239. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +101 -70
  240. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +13 -10
  241. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +25 -22
  242. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +40 -23
  243. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +161 -75
  244. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +31 -18
  245. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +114 -56
  246. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +46 -29
  247. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +139 -91
  248. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +65 -42
  249. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +200 -121
  250. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +80 -45
  251. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +208 -131
  252. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +34 -21
  253. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +74 -53
  254. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +7 -4
  255. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +13 -8
  256. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +16 -9
  257. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +28 -18
  258. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +28 -15
  259. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +55 -34
  260. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +43 -22
  261. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +91 -53
  262. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +35 -20
  263. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +92 -57
  264. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +7 -4
  265. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +13 -8
  266. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -11
  267. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +48 -26
  268. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +23 -14
  269. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +61 -41
  270. data/src/core/ext/upb-generated/google/api/annotations.upb.c +14 -11
  271. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -20
  272. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +255 -154
  273. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +934 -450
  274. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +299 -180
  275. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +946 -483
  276. data/src/core/ext/upb-generated/google/api/http.upb.c +68 -35
  277. data/src/core/ext/upb-generated/google/api/http.upb.h +284 -120
  278. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +22 -13
  279. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +95 -37
  280. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -10
  281. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +38 -22
  282. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +1018 -424
  283. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +3851 -1412
  284. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -10
  285. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +38 -22
  286. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +10 -7
  287. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +18 -14
  288. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +62 -39
  289. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +207 -102
  290. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -10
  291. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +38 -22
  292. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +90 -51
  293. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +157 -107
  294. data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -13
  295. data/src/core/ext/upb-generated/google/rpc/status.upb.h +95 -37
  296. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +59 -34
  297. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +154 -92
  298. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +43 -24
  299. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +118 -60
  300. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +250 -145
  301. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +919 -415
  302. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +34 -19
  303. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +76 -51
  304. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +25 -14
  305. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +45 -30
  306. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +144 -81
  307. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +405 -217
  308. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +51 -26
  309. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +153 -61
  310. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +173 -102
  311. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +855 -298
  312. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +68 -49
  313. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +155 -104
  314. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +26 -17
  315. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +55 -34
  316. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +12 -9
  317. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +31 -14
  318. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +26 -17
  319. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +55 -34
  320. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +23 -16
  321. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +45 -30
  322. data/src/core/ext/upb-generated/validate/validate.upb.c +845 -455
  323. data/src/core/ext/upb-generated/validate/validate.upb.h +4347 -1908
  324. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +68 -49
  325. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +155 -104
  326. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +26 -17
  327. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +55 -34
  328. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +12 -9
  329. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +31 -14
  330. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +65 -44
  331. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +137 -91
  332. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +23 -16
  333. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +45 -30
  334. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +16 -9
  335. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +28 -18
  336. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +21 -12
  337. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +45 -30
  338. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +37 -22
  339. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +96 -63
  340. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +26 -17
  341. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +52 -29
  342. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +21 -12
  343. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +45 -30
  344. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +23 -14
  345. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +62 -42
  346. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +44 -25
  347. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +169 -79
  348. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +27 -14
  349. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +65 -38
  350. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +69 -38
  351. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +167 -76
  352. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +21 -12
  353. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +89 -34
  354. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +18 -11
  355. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +35 -26
  356. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +32 -19
  357. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +150 -54
  358. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +10 -7
  359. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +18 -14
  360. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +34 -21
  361. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +161 -63
  362. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +162 -101
  363. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +501 -293
  364. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +85 -52
  365. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +430 -164
  366. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +24 -15
  367. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +53 -37
  368. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +40 -23
  369. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +161 -75
  370. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +37 -22
  371. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +92 -66
  372. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +43 -22
  373. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +91 -53
  374. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +21 -12
  375. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +45 -30
  376. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +1 -1
  377. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +6 -5
  378. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +1 -1
  379. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +6 -5
  380. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +1 -1
  381. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +6 -5
  382. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +1 -1
  383. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +6 -5
  384. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +1 -1
  385. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +6 -5
  386. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +1 -1
  387. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +6 -5
  388. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +1 -1
  389. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +6 -5
  390. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +1 -1
  391. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +6 -5
  392. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +1 -1
  393. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +6 -5
  394. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +1 -1
  395. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +6 -5
  396. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +1 -1
  397. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +6 -5
  398. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +1 -1
  399. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +6 -5
  400. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +1 -1
  401. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +6 -5
  402. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +1 -1
  403. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +6 -5
  404. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +252 -253
  405. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +6 -5
  406. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +1 -1
  407. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +6 -5
  408. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +1 -1
  409. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +6 -5
  410. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +1 -1
  411. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +6 -5
  412. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +1 -1
  413. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +6 -5
  414. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +1 -1
  415. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +6 -5
  416. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +1 -1
  417. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +6 -5
  418. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +1 -1
  419. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +6 -5
  420. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +1 -1
  421. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +6 -5
  422. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +13 -12
  423. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +11 -5
  424. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +1 -1
  425. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +6 -5
  426. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +1 -1
  427. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +6 -5
  428. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +1 -1
  429. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +6 -5
  430. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +1 -1
  431. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +6 -5
  432. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +1 -1
  433. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +6 -5
  434. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +1 -1
  435. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +6 -5
  436. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +44 -44
  437. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +6 -5
  438. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +1 -1
  439. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +6 -5
  440. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +1 -1
  441. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +6 -5
  442. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +1 -1
  443. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +6 -5
  444. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +1 -1
  445. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +6 -5
  446. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +1 -1
  447. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +6 -5
  448. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +1 -1
  449. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +6 -5
  450. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +1 -1
  451. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +6 -5
  452. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +1 -1
  453. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +6 -5
  454. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +1 -1
  455. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +6 -5
  456. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +1 -1
  457. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +6 -5
  458. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +1 -1
  459. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +6 -5
  460. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +1 -1
  461. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +6 -5
  462. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +1 -1
  463. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +6 -5
  464. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +1 -1
  465. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +6 -5
  466. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +1 -1
  467. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +6 -5
  468. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +1 -1
  469. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +6 -5
  470. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +134 -128
  471. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +11 -5
  472. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +1 -1
  473. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +6 -5
  474. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +1 -1
  475. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +6 -5
  476. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +1 -1
  477. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +6 -5
  478. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +1 -1
  479. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +6 -5
  480. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +1 -1
  481. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +6 -5
  482. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +1 -1
  483. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +6 -5
  484. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +1 -1
  485. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +6 -5
  486. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +1 -1
  487. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +6 -5
  488. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +1 -1
  489. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +6 -5
  490. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +1 -1
  491. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +6 -5
  492. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +1 -1
  493. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +6 -5
  494. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +1 -1
  495. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +6 -5
  496. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +1 -1
  497. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +6 -5
  498. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +1 -1
  499. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +6 -5
  500. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +1 -1
  501. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +6 -5
  502. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +1 -1
  503. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +6 -5
  504. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +1 -1
  505. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +6 -5
  506. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +1 -1
  507. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +6 -5
  508. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +1 -1
  509. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +6 -5
  510. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +1 -1
  511. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +6 -5
  512. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +1 -1
  513. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +6 -5
  514. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +379 -376
  515. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +6 -5
  516. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +1 -1
  517. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +6 -5
  518. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +1 -1
  519. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +6 -5
  520. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +138 -136
  521. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +6 -5
  522. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +1 -1
  523. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +6 -5
  524. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +1 -1
  525. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +6 -5
  526. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +1 -1
  527. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +6 -5
  528. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +1 -1
  529. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +6 -5
  530. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +1 -1
  531. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +6 -5
  532. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +1 -1
  533. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +6 -5
  534. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +12 -13
  535. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +6 -5
  536. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +1 -1
  537. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +6 -5
  538. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +1 -1
  539. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +6 -5
  540. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +1 -1
  541. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +6 -5
  542. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  543. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  544. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +1 -1
  545. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +6 -5
  546. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +1 -1
  547. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +6 -5
  548. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +1 -1
  549. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +6 -5
  550. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +1 -1
  551. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +6 -5
  552. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +1 -1
  553. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +6 -5
  554. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +1 -1
  555. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +6 -5
  556. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +1 -1
  557. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +6 -5
  558. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +1 -1
  559. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +6 -5
  560. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +1 -1
  561. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +6 -5
  562. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +1 -1
  563. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +6 -5
  564. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +1 -1
  565. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +6 -5
  566. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +1 -1
  567. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +6 -5
  568. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +1 -1
  569. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +6 -5
  570. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +1 -1
  571. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +6 -5
  572. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +1 -1
  573. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +6 -5
  574. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +1 -1
  575. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +6 -5
  576. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +1 -1
  577. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +6 -5
  578. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +1 -1
  579. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +6 -5
  580. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +1 -1
  581. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +6 -5
  582. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +1 -1
  583. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +6 -5
  584. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +1 -1
  585. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +6 -5
  586. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +1 -1
  587. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +6 -5
  588. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +1 -1
  589. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +6 -5
  590. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +1 -1
  591. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +6 -5
  592. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +1 -1
  593. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +6 -5
  594. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +1 -1
  595. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +6 -5
  596. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +329 -273
  597. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +11 -5
  598. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +1 -1
  599. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +6 -5
  600. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +1 -1
  601. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +6 -5
  602. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +1 -1
  603. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +6 -5
  604. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +1 -1
  605. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +6 -5
  606. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +1 -1
  607. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +6 -5
  608. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +1 -1
  609. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +6 -5
  610. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +1 -1
  611. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +6 -5
  612. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +1 -1
  613. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +6 -5
  614. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +1 -1
  615. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +6 -5
  616. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +1 -1
  617. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +6 -5
  618. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +1 -1
  619. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +6 -5
  620. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +1 -1
  621. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +6 -5
  622. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +1 -1
  623. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +6 -5
  624. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +1 -1
  625. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +6 -5
  626. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +1 -1
  627. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +6 -5
  628. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +1 -1
  629. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +6 -5
  630. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +1 -1
  631. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +6 -5
  632. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +1 -1
  633. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +6 -5
  634. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +1 -1
  635. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +6 -5
  636. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +1 -1
  637. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +6 -5
  638. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +1 -1
  639. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +6 -5
  640. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +1 -1
  641. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +6 -5
  642. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +1 -1
  643. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +6 -5
  644. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +1 -1
  645. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +6 -5
  646. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +1 -1
  647. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +6 -5
  648. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +1 -1
  649. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +6 -5
  650. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +1 -1
  651. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +6 -5
  652. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +1 -1
  653. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +6 -5
  654. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +1 -1
  655. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +6 -5
  656. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  657. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  658. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +1 -1
  659. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +6 -5
  660. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +1 -1
  661. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +6 -5
  662. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +1 -1
  663. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +6 -5
  664. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +1 -1
  665. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +6 -5
  666. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +1 -1
  667. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +6 -5
  668. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +1 -1
  669. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +6 -5
  670. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +1 -1
  671. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +6 -5
  672. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +1 -1
  673. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +6 -5
  674. data/src/core/ext/xds/certificate_provider_store.cc +4 -4
  675. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +7 -7
  676. data/src/core/ext/xds/upb_utils.h +1 -1
  677. data/src/core/ext/xds/xds_api.cc +34 -14
  678. data/src/core/ext/xds/xds_api.h +2 -2
  679. data/src/core/ext/xds/xds_bootstrap.cc +3 -3
  680. data/src/core/ext/xds/xds_bootstrap_grpc.cc +15 -15
  681. data/src/core/ext/xds/xds_client.cc +24 -3
  682. data/src/core/ext/xds/xds_client.h +1 -1
  683. data/src/core/ext/xds/xds_cluster.cc +26 -34
  684. data/src/core/ext/xds/xds_cluster.h +1 -2
  685. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +4 -3
  686. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +2 -2
  687. data/src/core/ext/xds/xds_common_types.cc +5 -4
  688. data/src/core/ext/xds/xds_endpoint.cc +5 -2
  689. data/src/core/ext/xds/xds_endpoint.h +1 -1
  690. data/src/core/ext/xds/xds_http_fault_filter.cc +2 -2
  691. data/src/core/ext/xds/xds_http_fault_filter.h +1 -1
  692. data/src/core/ext/xds/xds_http_filters.h +3 -2
  693. data/src/core/ext/xds/xds_http_rbac_filter.cc +6 -8
  694. data/src/core/ext/xds/xds_http_rbac_filter.h +1 -1
  695. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +2 -2
  696. data/src/core/ext/xds/xds_http_stateful_session_filter.h +1 -1
  697. data/src/core/ext/xds/xds_lb_policy_registry.cc +4 -22
  698. data/src/core/ext/xds/xds_listener.cc +10 -4
  699. data/src/core/ext/xds/xds_listener.h +1 -1
  700. data/src/core/ext/xds/xds_resource_type.h +2 -2
  701. data/src/core/ext/xds/xds_route_config.cc +8 -5
  702. data/src/core/ext/xds/xds_route_config.h +1 -1
  703. data/src/core/lib/channel/channelz.cc +5 -4
  704. data/src/core/lib/channel/channelz_registry.cc +7 -6
  705. data/src/core/lib/channel/connected_channel.cc +82 -27
  706. data/src/core/lib/channel/promise_based_filter.cc +2 -8
  707. data/src/core/lib/debug/trace.cc +16 -7
  708. data/src/core/lib/debug/trace.h +12 -4
  709. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +8 -26
  710. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +6 -1
  711. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -0
  712. data/src/core/lib/event_engine/shim.cc +2 -0
  713. data/src/core/lib/event_engine/trace.cc +1 -0
  714. data/src/core/lib/event_engine/trace.h +6 -0
  715. data/src/core/lib/experiments/experiments.cc +3 -0
  716. data/src/core/lib/experiments/experiments.h +4 -1
  717. data/src/core/lib/gpr/posix/time.cc +5 -0
  718. data/src/core/lib/gprpp/status_helper.cc +2 -2
  719. data/src/core/lib/gprpp/validation_errors.cc +8 -3
  720. data/src/core/lib/gprpp/validation_errors.h +16 -9
  721. data/src/core/lib/iomgr/buffer_list.h +0 -1
  722. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  723. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  724. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -0
  725. data/src/core/lib/iomgr/timer_generic.cc +17 -16
  726. data/src/core/lib/json/json.h +61 -113
  727. data/src/core/lib/json/json_object_loader.cc +20 -20
  728. data/src/core/lib/json/json_object_loader.h +8 -3
  729. data/src/core/lib/json/json_reader.cc +58 -38
  730. data/src/core/lib/json/json_reader.h +34 -0
  731. data/src/core/lib/json/json_util.cc +6 -6
  732. data/src/core/lib/json/json_util.h +5 -4
  733. data/src/core/lib/json/json_writer.cc +19 -19
  734. data/src/core/lib/json/json_writer.h +33 -0
  735. data/src/core/lib/load_balancing/lb_policy_registry.cc +7 -7
  736. data/src/core/lib/promise/pipe.h +7 -0
  737. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +35 -37
  738. data/src/core/lib/security/credentials/external/external_account_credentials.cc +60 -62
  739. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +22 -21
  740. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +28 -27
  741. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +4 -2
  742. data/src/core/lib/security/credentials/jwt/json_token.cc +6 -4
  743. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +8 -5
  744. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +39 -38
  745. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +17 -16
  746. data/src/core/lib/security/util/json_util.cc +5 -5
  747. data/src/core/lib/service_config/service_config_impl.cc +11 -5
  748. data/src/core/lib/slice/slice.h +2 -0
  749. data/src/core/lib/surface/call.cc +71 -26
  750. data/src/core/lib/surface/call.h +1 -5
  751. data/src/core/lib/surface/completion_queue.cc +2 -1
  752. data/src/core/lib/surface/server.cc +47 -19
  753. data/src/core/lib/surface/version.cc +2 -2
  754. data/src/core/lib/transport/batch_builder.h +9 -1
  755. data/src/core/lib/transport/metadata_batch.h +2 -59
  756. data/src/core/lib/transport/metadata_compression_traits.h +67 -0
  757. data/src/core/lib/transport/simple_slice_based_metadata.h +48 -0
  758. data/src/core/lib/transport/transport.h +3 -0
  759. data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -4
  760. data/src/ruby/lib/grpc/version.rb +1 -1
  761. data/third_party/abseil-cpp/absl/base/config.h +1 -1
  762. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +33 -47
  763. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +7 -4
  764. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +32 -2
  765. data/third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c +11 -12
  766. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +826 -0
  767. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +10 -12
  768. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +8 -10
  769. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +2 -1
  770. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +2 -1
  771. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +18 -14
  772. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +17 -21
  773. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +7 -3
  774. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +3 -4
  775. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +1 -72
  776. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +4 -2
  777. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +4 -3
  778. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +7 -3
  779. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +4 -2
  780. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +1 -1
  781. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -8
  782. data/third_party/boringssl-with-bazel/src/include/openssl/kyber.h +128 -0
  783. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +8 -1
  784. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +1 -1
  785. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +8 -12
  786. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +1 -10
  787. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +9 -2
  788. data/third_party/boringssl-with-bazel/src/ssl/internal.h +17 -17
  789. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +8 -4
  790. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  791. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +72 -5
  792. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +19 -21
  793. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +2 -1
  794. data/third_party/upb/upb/{table_internal.h → alloc.h} +6 -6
  795. data/third_party/upb/upb/arena.h +4 -193
  796. data/third_party/upb/upb/array.h +4 -51
  797. data/third_party/upb/upb/base/descriptor_constants.h +104 -0
  798. data/third_party/upb/upb/base/log2.h +57 -0
  799. data/third_party/upb/upb/{status.c → base/status.c} +2 -7
  800. data/third_party/upb/upb/base/status.h +66 -0
  801. data/third_party/upb/upb/base/string_view.h +75 -0
  802. data/third_party/upb/upb/{array.c → collections/array.c} +67 -36
  803. data/third_party/upb/upb/collections/array.h +85 -0
  804. data/third_party/upb/upb/collections/array_internal.h +135 -0
  805. data/third_party/upb/upb/{map.c → collections/map.c} +53 -26
  806. data/third_party/upb/upb/collections/map.h +135 -0
  807. data/third_party/upb/upb/collections/map_gencode_util.h +78 -0
  808. data/third_party/upb/upb/collections/map_internal.h +170 -0
  809. data/third_party/upb/upb/collections/map_sorter.c +166 -0
  810. data/third_party/upb/upb/collections/map_sorter_internal.h +109 -0
  811. data/third_party/upb/upb/{message_value.h → collections/message_value.h} +12 -13
  812. data/third_party/upb/upb/decode.h +3 -62
  813. data/third_party/upb/upb/def.h +4 -384
  814. data/third_party/upb/upb/def.hpp +3 -411
  815. data/third_party/upb/upb/encode.h +3 -48
  816. data/third_party/upb/upb/extension_registry.h +3 -52
  817. data/third_party/upb/upb/{table.c → hash/common.c} +52 -110
  818. data/third_party/upb/upb/hash/common.h +199 -0
  819. data/third_party/upb/upb/hash/int_table.h +102 -0
  820. data/third_party/upb/upb/hash/str_table.h +161 -0
  821. data/third_party/upb/upb/{json_decode.c → json/decode.c} +63 -98
  822. data/third_party/upb/upb/json/decode.h +52 -0
  823. data/third_party/upb/upb/{json_encode.c → json/encode.c} +69 -45
  824. data/third_party/upb/upb/json/encode.h +70 -0
  825. data/third_party/upb/upb/json_decode.h +4 -15
  826. data/third_party/upb/upb/json_encode.h +4 -33
  827. data/third_party/upb/upb/lex/atoi.c +68 -0
  828. data/third_party/upb/upb/lex/atoi.h +53 -0
  829. data/third_party/upb/upb/{upb.c → lex/round_trip.c} +2 -11
  830. data/third_party/upb/upb/{internal/upb.h → lex/round_trip.h} +17 -30
  831. data/third_party/upb/upb/lex/strtod.c +97 -0
  832. data/third_party/upb/upb/lex/strtod.h +46 -0
  833. data/third_party/upb/upb/lex/unicode.c +57 -0
  834. data/third_party/upb/upb/lex/unicode.h +77 -0
  835. data/third_party/upb/upb/map.h +4 -85
  836. data/third_party/upb/upb/mem/alloc.c +47 -0
  837. data/third_party/upb/upb/mem/alloc.h +98 -0
  838. data/third_party/upb/upb/mem/arena.c +367 -0
  839. data/third_party/upb/upb/mem/arena.h +160 -0
  840. data/third_party/upb/upb/mem/arena_internal.h +114 -0
  841. data/third_party/upb/upb/message/accessors.c +68 -0
  842. data/third_party/upb/upb/message/accessors.h +379 -0
  843. data/third_party/upb/upb/message/accessors_internal.h +325 -0
  844. data/third_party/upb/upb/message/extension_internal.h +83 -0
  845. data/third_party/upb/upb/message/internal.h +135 -0
  846. data/third_party/upb/upb/message/message.c +180 -0
  847. data/third_party/upb/upb/message/message.h +69 -0
  848. data/third_party/upb/upb/mini_table/common.c +128 -0
  849. data/third_party/upb/upb/mini_table/common.h +170 -0
  850. data/third_party/upb/upb/mini_table/common_internal.h +111 -0
  851. data/third_party/upb/upb/{mini_table.c → mini_table/decode.c} +513 -533
  852. data/third_party/upb/upb/mini_table/decode.h +179 -0
  853. data/third_party/upb/upb/mini_table/encode.c +300 -0
  854. data/third_party/upb/upb/mini_table/encode_internal.h +111 -0
  855. data/third_party/upb/upb/{mini_table.hpp → mini_table/encode_internal.hpp} +32 -8
  856. data/third_party/upb/upb/mini_table/enum_internal.h +88 -0
  857. data/third_party/upb/upb/mini_table/extension_internal.h +47 -0
  858. data/third_party/upb/upb/{extension_registry.c → mini_table/extension_registry.c} +27 -24
  859. data/third_party/upb/upb/mini_table/extension_registry.h +104 -0
  860. data/third_party/upb/upb/mini_table/field_internal.h +192 -0
  861. data/third_party/upb/upb/mini_table/file_internal.h +47 -0
  862. data/third_party/upb/upb/mini_table/message_internal.h +136 -0
  863. data/third_party/upb/upb/mini_table/sub_internal.h +38 -0
  864. data/third_party/upb/upb/mini_table/types.h +40 -0
  865. data/third_party/upb/upb/mini_table.h +4 -157
  866. data/third_party/upb/upb/msg.h +3 -38
  867. data/third_party/upb/upb/port/atomic.h +101 -0
  868. data/third_party/upb/upb/{port_def.inc → port/def.inc} +94 -27
  869. data/third_party/upb/upb/{port_undef.inc → port/undef.inc} +13 -3
  870. data/third_party/upb/upb/{internal → port}/vsnprintf_compat.h +5 -7
  871. data/third_party/upb/upb/reflection/common.h +67 -0
  872. data/third_party/upb/upb/reflection/def.h +42 -0
  873. data/third_party/upb/upb/reflection/def.hpp +610 -0
  874. data/third_party/upb/upb/reflection/def_builder.c +357 -0
  875. data/third_party/upb/upb/reflection/def_builder_internal.h +157 -0
  876. data/third_party/upb/upb/reflection/def_pool.c +462 -0
  877. data/third_party/upb/upb/reflection/def_pool.h +108 -0
  878. data/third_party/upb/upb/reflection/def_pool_internal.h +77 -0
  879. data/third_party/upb/upb/reflection/def_type.c +50 -0
  880. data/third_party/upb/upb/reflection/def_type.h +81 -0
  881. data/third_party/upb/upb/reflection/desc_state.c +53 -0
  882. data/third_party/upb/upb/reflection/desc_state_internal.h +64 -0
  883. data/third_party/upb/upb/reflection/enum_def.c +310 -0
  884. data/third_party/upb/upb/reflection/enum_def.h +80 -0
  885. data/third_party/upb/upb/reflection/enum_def_internal.h +56 -0
  886. data/third_party/upb/upb/reflection/enum_reserved_range.c +84 -0
  887. data/third_party/upb/upb/reflection/enum_reserved_range.h +51 -0
  888. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +55 -0
  889. data/third_party/upb/upb/reflection/enum_value_def.c +144 -0
  890. data/third_party/upb/upb/reflection/enum_value_def.h +57 -0
  891. data/third_party/upb/upb/reflection/enum_value_def_internal.h +57 -0
  892. data/third_party/upb/upb/reflection/extension_range.c +93 -0
  893. data/third_party/upb/upb/reflection/extension_range.h +55 -0
  894. data/third_party/upb/upb/reflection/extension_range_internal.h +54 -0
  895. data/third_party/upb/upb/reflection/field_def.c +930 -0
  896. data/third_party/upb/upb/reflection/field_def.h +91 -0
  897. data/third_party/upb/upb/reflection/field_def_internal.h +76 -0
  898. data/third_party/upb/upb/reflection/file_def.c +370 -0
  899. data/third_party/upb/upb/reflection/file_def.h +77 -0
  900. data/third_party/upb/upb/reflection/file_def_internal.h +57 -0
  901. data/third_party/upb/upb/reflection/message.c +233 -0
  902. data/third_party/upb/upb/reflection/message.h +102 -0
  903. data/third_party/upb/upb/reflection/message.hpp +37 -0
  904. data/third_party/upb/upb/reflection/message_def.c +718 -0
  905. data/third_party/upb/upb/reflection/message_def.h +174 -0
  906. data/third_party/upb/upb/reflection/message_def_internal.h +63 -0
  907. data/third_party/upb/upb/reflection/message_reserved_range.c +81 -0
  908. data/third_party/upb/upb/reflection/message_reserved_range.h +51 -0
  909. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +55 -0
  910. data/third_party/upb/upb/reflection/method_def.c +124 -0
  911. data/third_party/upb/upb/reflection/method_def.h +59 -0
  912. data/third_party/upb/upb/reflection/method_def_internal.h +53 -0
  913. data/third_party/upb/upb/reflection/oneof_def.c +226 -0
  914. data/third_party/upb/upb/reflection/oneof_def.h +66 -0
  915. data/third_party/upb/upb/reflection/oneof_def_internal.h +57 -0
  916. data/third_party/upb/upb/reflection/service_def.c +128 -0
  917. data/third_party/upb/upb/reflection/service_def.h +60 -0
  918. data/third_party/upb/upb/reflection/service_def_internal.h +53 -0
  919. data/third_party/upb/upb/reflection.h +4 -78
  920. data/third_party/upb/upb/reflection.hpp +3 -7
  921. data/third_party/upb/upb/status.h +4 -34
  922. data/third_party/upb/upb/{collections.h → string_view.h} +7 -7
  923. data/third_party/upb/upb/{text_encode.c → text/encode.c} +74 -70
  924. data/third_party/upb/upb/text/encode.h +69 -0
  925. data/third_party/upb/upb/text_encode.h +4 -32
  926. data/third_party/upb/upb/upb.h +6 -151
  927. data/third_party/upb/upb/upb.hpp +10 -18
  928. data/third_party/upb/upb/wire/common.h +44 -0
  929. data/third_party/upb/upb/wire/common_internal.h +50 -0
  930. data/third_party/upb/upb/wire/decode.c +1343 -0
  931. data/third_party/upb/upb/wire/decode.h +108 -0
  932. data/third_party/upb/upb/{decode_fast.c → wire/decode_fast.c} +184 -225
  933. data/third_party/upb/upb/{decode_fast.h → wire/decode_fast.h} +21 -7
  934. data/third_party/upb/upb/{internal/decode.h → wire/decode_internal.h} +44 -92
  935. data/third_party/upb/upb/{encode.c → wire/encode.c} +114 -95
  936. data/third_party/upb/upb/wire/encode.h +92 -0
  937. data/third_party/upb/upb/wire/eps_copy_input_stream.c +39 -0
  938. data/third_party/upb/upb/wire/eps_copy_input_stream.h +425 -0
  939. data/third_party/upb/upb/wire/reader.c +67 -0
  940. data/third_party/upb/upb/wire/reader.h +227 -0
  941. data/third_party/upb/upb/wire/swap_internal.h +63 -0
  942. data/third_party/upb/upb/wire/types.h +41 -0
  943. data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-neon.c +1 -1
  944. data/third_party/{upb/third_party/utf8_range → utf8_range}/utf8_range.h +12 -0
  945. metadata +155 -40
  946. data/src/core/ext/transport/chttp2/transport/context_list.cc +0 -71
  947. data/src/core/ext/transport/chttp2/transport/context_list.h +0 -54
  948. data/third_party/upb/upb/arena.c +0 -277
  949. data/third_party/upb/upb/decode.c +0 -1221
  950. data/third_party/upb/upb/def.c +0 -3269
  951. data/third_party/upb/upb/internal/table.h +0 -385
  952. data/third_party/upb/upb/msg.c +0 -368
  953. data/third_party/upb/upb/msg_internal.h +0 -837
  954. data/third_party/upb/upb/reflection.c +0 -323
  955. /data/third_party/{upb/third_party/utf8_range → utf8_range}/naive.c +0 -0
  956. /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_ */