grpc 1.54.3 → 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 (962) 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 +19 -21
  7. data/src/core/ext/filters/client_channel/client_channel.h +20 -18
  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/posix_engine.h +0 -1
  711. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +0 -29
  712. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +0 -3
  713. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +6 -1
  714. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -0
  715. data/src/core/lib/event_engine/shim.cc +2 -0
  716. data/src/core/lib/event_engine/trace.cc +1 -0
  717. data/src/core/lib/event_engine/trace.h +6 -0
  718. data/src/core/lib/experiments/experiments.cc +3 -0
  719. data/src/core/lib/experiments/experiments.h +4 -1
  720. data/src/core/lib/gpr/posix/time.cc +5 -0
  721. data/src/core/lib/gprpp/status_helper.cc +2 -2
  722. data/src/core/lib/gprpp/validation_errors.cc +8 -3
  723. data/src/core/lib/gprpp/validation_errors.h +16 -9
  724. data/src/core/lib/iomgr/buffer_list.h +0 -1
  725. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  726. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  727. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -0
  728. data/src/core/lib/iomgr/tcp_server_posix.cc +14 -39
  729. data/src/core/lib/iomgr/tcp_server_utils_posix.h +0 -12
  730. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +0 -21
  731. data/src/core/lib/iomgr/timer_generic.cc +17 -16
  732. data/src/core/lib/json/json.h +61 -113
  733. data/src/core/lib/json/json_object_loader.cc +20 -20
  734. data/src/core/lib/json/json_object_loader.h +8 -3
  735. data/src/core/lib/json/json_reader.cc +58 -38
  736. data/src/core/lib/json/json_reader.h +34 -0
  737. data/src/core/lib/json/json_util.cc +6 -6
  738. data/src/core/lib/json/json_util.h +5 -4
  739. data/src/core/lib/json/json_writer.cc +19 -19
  740. data/src/core/lib/json/json_writer.h +33 -0
  741. data/src/core/lib/load_balancing/lb_policy_registry.cc +7 -7
  742. data/src/core/lib/promise/pipe.h +7 -0
  743. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +35 -37
  744. data/src/core/lib/security/credentials/external/external_account_credentials.cc +60 -62
  745. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +22 -21
  746. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +28 -27
  747. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +4 -2
  748. data/src/core/lib/security/credentials/jwt/json_token.cc +6 -4
  749. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +8 -5
  750. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +39 -38
  751. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +17 -16
  752. data/src/core/lib/security/util/json_util.cc +5 -5
  753. data/src/core/lib/service_config/service_config_impl.cc +11 -5
  754. data/src/core/lib/slice/slice.h +2 -0
  755. data/src/core/lib/surface/call.cc +71 -26
  756. data/src/core/lib/surface/call.h +1 -5
  757. data/src/core/lib/surface/completion_queue.cc +2 -1
  758. data/src/core/lib/surface/server.cc +47 -19
  759. data/src/core/lib/surface/version.cc +2 -2
  760. data/src/core/lib/transport/batch_builder.h +9 -1
  761. data/src/core/lib/transport/metadata_batch.h +2 -59
  762. data/src/core/lib/transport/metadata_compression_traits.h +67 -0
  763. data/src/core/lib/transport/simple_slice_based_metadata.h +48 -0
  764. data/src/core/lib/transport/transport.h +3 -0
  765. data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -4
  766. data/src/ruby/lib/grpc/version.rb +1 -1
  767. data/third_party/abseil-cpp/absl/base/config.h +1 -1
  768. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +33 -47
  769. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +7 -4
  770. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +32 -2
  771. data/third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c +11 -12
  772. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +826 -0
  773. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +10 -12
  774. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +8 -10
  775. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +2 -1
  776. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +2 -1
  777. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +18 -14
  778. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +17 -21
  779. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +7 -3
  780. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +3 -4
  781. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +1 -72
  782. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +4 -2
  783. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +4 -3
  784. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +7 -3
  785. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +4 -2
  786. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +1 -1
  787. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -8
  788. data/third_party/boringssl-with-bazel/src/include/openssl/kyber.h +128 -0
  789. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +8 -1
  790. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +1 -1
  791. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +8 -12
  792. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +1 -10
  793. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +9 -2
  794. data/third_party/boringssl-with-bazel/src/ssl/internal.h +17 -17
  795. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +8 -4
  796. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  797. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +72 -5
  798. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +19 -21
  799. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +2 -1
  800. data/third_party/upb/upb/{table_internal.h → alloc.h} +6 -6
  801. data/third_party/upb/upb/arena.h +4 -193
  802. data/third_party/upb/upb/array.h +4 -51
  803. data/third_party/upb/upb/base/descriptor_constants.h +104 -0
  804. data/third_party/upb/upb/base/log2.h +57 -0
  805. data/third_party/upb/upb/{status.c → base/status.c} +2 -7
  806. data/third_party/upb/upb/base/status.h +66 -0
  807. data/third_party/upb/upb/base/string_view.h +75 -0
  808. data/third_party/upb/upb/{array.c → collections/array.c} +67 -36
  809. data/third_party/upb/upb/collections/array.h +85 -0
  810. data/third_party/upb/upb/collections/array_internal.h +135 -0
  811. data/third_party/upb/upb/{map.c → collections/map.c} +53 -26
  812. data/third_party/upb/upb/collections/map.h +135 -0
  813. data/third_party/upb/upb/collections/map_gencode_util.h +78 -0
  814. data/third_party/upb/upb/collections/map_internal.h +170 -0
  815. data/third_party/upb/upb/collections/map_sorter.c +166 -0
  816. data/third_party/upb/upb/collections/map_sorter_internal.h +109 -0
  817. data/third_party/upb/upb/{message_value.h → collections/message_value.h} +12 -13
  818. data/third_party/upb/upb/decode.h +3 -62
  819. data/third_party/upb/upb/def.h +4 -384
  820. data/third_party/upb/upb/def.hpp +3 -411
  821. data/third_party/upb/upb/encode.h +3 -48
  822. data/third_party/upb/upb/extension_registry.h +3 -52
  823. data/third_party/upb/upb/{table.c → hash/common.c} +52 -110
  824. data/third_party/upb/upb/hash/common.h +199 -0
  825. data/third_party/upb/upb/hash/int_table.h +102 -0
  826. data/third_party/upb/upb/hash/str_table.h +161 -0
  827. data/third_party/upb/upb/{json_decode.c → json/decode.c} +63 -98
  828. data/third_party/upb/upb/json/decode.h +52 -0
  829. data/third_party/upb/upb/{json_encode.c → json/encode.c} +69 -45
  830. data/third_party/upb/upb/json/encode.h +70 -0
  831. data/third_party/upb/upb/json_decode.h +4 -15
  832. data/third_party/upb/upb/json_encode.h +4 -33
  833. data/third_party/upb/upb/lex/atoi.c +68 -0
  834. data/third_party/upb/upb/lex/atoi.h +53 -0
  835. data/third_party/upb/upb/{upb.c → lex/round_trip.c} +2 -11
  836. data/third_party/upb/upb/{internal/upb.h → lex/round_trip.h} +17 -30
  837. data/third_party/upb/upb/lex/strtod.c +97 -0
  838. data/third_party/upb/upb/lex/strtod.h +46 -0
  839. data/third_party/upb/upb/lex/unicode.c +57 -0
  840. data/third_party/upb/upb/lex/unicode.h +77 -0
  841. data/third_party/upb/upb/map.h +4 -85
  842. data/third_party/upb/upb/mem/alloc.c +47 -0
  843. data/third_party/upb/upb/mem/alloc.h +98 -0
  844. data/third_party/upb/upb/mem/arena.c +367 -0
  845. data/third_party/upb/upb/mem/arena.h +160 -0
  846. data/third_party/upb/upb/mem/arena_internal.h +114 -0
  847. data/third_party/upb/upb/message/accessors.c +68 -0
  848. data/third_party/upb/upb/message/accessors.h +379 -0
  849. data/third_party/upb/upb/message/accessors_internal.h +325 -0
  850. data/third_party/upb/upb/message/extension_internal.h +83 -0
  851. data/third_party/upb/upb/message/internal.h +135 -0
  852. data/third_party/upb/upb/message/message.c +180 -0
  853. data/third_party/upb/upb/message/message.h +69 -0
  854. data/third_party/upb/upb/mini_table/common.c +128 -0
  855. data/third_party/upb/upb/mini_table/common.h +170 -0
  856. data/third_party/upb/upb/mini_table/common_internal.h +111 -0
  857. data/third_party/upb/upb/{mini_table.c → mini_table/decode.c} +513 -533
  858. data/third_party/upb/upb/mini_table/decode.h +179 -0
  859. data/third_party/upb/upb/mini_table/encode.c +300 -0
  860. data/third_party/upb/upb/mini_table/encode_internal.h +111 -0
  861. data/third_party/upb/upb/{mini_table.hpp → mini_table/encode_internal.hpp} +32 -8
  862. data/third_party/upb/upb/mini_table/enum_internal.h +88 -0
  863. data/third_party/upb/upb/mini_table/extension_internal.h +47 -0
  864. data/third_party/upb/upb/{extension_registry.c → mini_table/extension_registry.c} +27 -24
  865. data/third_party/upb/upb/mini_table/extension_registry.h +104 -0
  866. data/third_party/upb/upb/mini_table/field_internal.h +192 -0
  867. data/third_party/upb/upb/mini_table/file_internal.h +47 -0
  868. data/third_party/upb/upb/mini_table/message_internal.h +136 -0
  869. data/third_party/upb/upb/mini_table/sub_internal.h +38 -0
  870. data/third_party/upb/upb/mini_table/types.h +40 -0
  871. data/third_party/upb/upb/mini_table.h +4 -157
  872. data/third_party/upb/upb/msg.h +3 -38
  873. data/third_party/upb/upb/port/atomic.h +101 -0
  874. data/third_party/upb/upb/{port_def.inc → port/def.inc} +94 -27
  875. data/third_party/upb/upb/{port_undef.inc → port/undef.inc} +13 -3
  876. data/third_party/upb/upb/{internal → port}/vsnprintf_compat.h +5 -7
  877. data/third_party/upb/upb/reflection/common.h +67 -0
  878. data/third_party/upb/upb/reflection/def.h +42 -0
  879. data/third_party/upb/upb/reflection/def.hpp +610 -0
  880. data/third_party/upb/upb/reflection/def_builder.c +357 -0
  881. data/third_party/upb/upb/reflection/def_builder_internal.h +157 -0
  882. data/third_party/upb/upb/reflection/def_pool.c +462 -0
  883. data/third_party/upb/upb/reflection/def_pool.h +108 -0
  884. data/third_party/upb/upb/reflection/def_pool_internal.h +77 -0
  885. data/third_party/upb/upb/reflection/def_type.c +50 -0
  886. data/third_party/upb/upb/reflection/def_type.h +81 -0
  887. data/third_party/upb/upb/reflection/desc_state.c +53 -0
  888. data/third_party/upb/upb/reflection/desc_state_internal.h +64 -0
  889. data/third_party/upb/upb/reflection/enum_def.c +310 -0
  890. data/third_party/upb/upb/reflection/enum_def.h +80 -0
  891. data/third_party/upb/upb/reflection/enum_def_internal.h +56 -0
  892. data/third_party/upb/upb/reflection/enum_reserved_range.c +84 -0
  893. data/third_party/upb/upb/reflection/enum_reserved_range.h +51 -0
  894. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +55 -0
  895. data/third_party/upb/upb/reflection/enum_value_def.c +144 -0
  896. data/third_party/upb/upb/reflection/enum_value_def.h +57 -0
  897. data/third_party/upb/upb/reflection/enum_value_def_internal.h +57 -0
  898. data/third_party/upb/upb/reflection/extension_range.c +93 -0
  899. data/third_party/upb/upb/reflection/extension_range.h +55 -0
  900. data/third_party/upb/upb/reflection/extension_range_internal.h +54 -0
  901. data/third_party/upb/upb/reflection/field_def.c +930 -0
  902. data/third_party/upb/upb/reflection/field_def.h +91 -0
  903. data/third_party/upb/upb/reflection/field_def_internal.h +76 -0
  904. data/third_party/upb/upb/reflection/file_def.c +370 -0
  905. data/third_party/upb/upb/reflection/file_def.h +77 -0
  906. data/third_party/upb/upb/reflection/file_def_internal.h +57 -0
  907. data/third_party/upb/upb/reflection/message.c +233 -0
  908. data/third_party/upb/upb/reflection/message.h +102 -0
  909. data/third_party/upb/upb/reflection/message.hpp +37 -0
  910. data/third_party/upb/upb/reflection/message_def.c +718 -0
  911. data/third_party/upb/upb/reflection/message_def.h +174 -0
  912. data/third_party/upb/upb/reflection/message_def_internal.h +63 -0
  913. data/third_party/upb/upb/reflection/message_reserved_range.c +81 -0
  914. data/third_party/upb/upb/reflection/message_reserved_range.h +51 -0
  915. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +55 -0
  916. data/third_party/upb/upb/reflection/method_def.c +124 -0
  917. data/third_party/upb/upb/reflection/method_def.h +59 -0
  918. data/third_party/upb/upb/reflection/method_def_internal.h +53 -0
  919. data/third_party/upb/upb/reflection/oneof_def.c +226 -0
  920. data/third_party/upb/upb/reflection/oneof_def.h +66 -0
  921. data/third_party/upb/upb/reflection/oneof_def_internal.h +57 -0
  922. data/third_party/upb/upb/reflection/service_def.c +128 -0
  923. data/third_party/upb/upb/reflection/service_def.h +60 -0
  924. data/third_party/upb/upb/reflection/service_def_internal.h +53 -0
  925. data/third_party/upb/upb/reflection.h +4 -78
  926. data/third_party/upb/upb/reflection.hpp +3 -7
  927. data/third_party/upb/upb/status.h +4 -34
  928. data/third_party/upb/upb/{collections.h → string_view.h} +7 -7
  929. data/third_party/upb/upb/{text_encode.c → text/encode.c} +74 -70
  930. data/third_party/upb/upb/text/encode.h +69 -0
  931. data/third_party/upb/upb/text_encode.h +4 -32
  932. data/third_party/upb/upb/upb.h +6 -151
  933. data/third_party/upb/upb/upb.hpp +10 -18
  934. data/third_party/upb/upb/wire/common.h +44 -0
  935. data/third_party/upb/upb/wire/common_internal.h +50 -0
  936. data/third_party/upb/upb/wire/decode.c +1343 -0
  937. data/third_party/upb/upb/wire/decode.h +108 -0
  938. data/third_party/upb/upb/{decode_fast.c → wire/decode_fast.c} +184 -225
  939. data/third_party/upb/upb/{decode_fast.h → wire/decode_fast.h} +21 -7
  940. data/third_party/upb/upb/{internal/decode.h → wire/decode_internal.h} +44 -92
  941. data/third_party/upb/upb/{encode.c → wire/encode.c} +114 -95
  942. data/third_party/upb/upb/wire/encode.h +92 -0
  943. data/third_party/upb/upb/wire/eps_copy_input_stream.c +39 -0
  944. data/third_party/upb/upb/wire/eps_copy_input_stream.h +425 -0
  945. data/third_party/upb/upb/wire/reader.c +67 -0
  946. data/third_party/upb/upb/wire/reader.h +227 -0
  947. data/third_party/upb/upb/wire/swap_internal.h +63 -0
  948. data/third_party/upb/upb/wire/types.h +41 -0
  949. data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-neon.c +1 -1
  950. data/third_party/{upb/third_party/utf8_range → utf8_range}/utf8_range.h +12 -0
  951. metadata +155 -40
  952. data/src/core/ext/transport/chttp2/transport/context_list.cc +0 -71
  953. data/src/core/ext/transport/chttp2/transport/context_list.h +0 -54
  954. data/third_party/upb/upb/arena.c +0 -277
  955. data/third_party/upb/upb/decode.c +0 -1221
  956. data/third_party/upb/upb/def.c +0 -3269
  957. data/third_party/upb/upb/internal/table.h +0 -385
  958. data/third_party/upb/upb/msg.c +0 -368
  959. data/third_party/upb/upb/msg_internal.h +0 -837
  960. data/third_party/upb/upb/reflection.c +0 -323
  961. /data/third_party/{upb/third_party/utf8_range → utf8_range}/naive.c +0 -0
  962. /data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-sse.c +0 -0
@@ -0,0 +1,180 @@
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/message/message.h"
29
+
30
+ #include <math.h>
31
+
32
+ #include "upb/base/log2.h"
33
+ #include "upb/message/internal.h"
34
+
35
+ // Must be last.
36
+ #include "upb/port/def.inc"
37
+
38
+ const float kUpb_FltInfinity = INFINITY;
39
+ const double kUpb_Infinity = INFINITY;
40
+ const double kUpb_NaN = NAN;
41
+
42
+ static const size_t overhead = sizeof(upb_Message_InternalData);
43
+
44
+ upb_Message* upb_Message_New(const upb_MiniTable* mini_table,
45
+ upb_Arena* arena) {
46
+ return _upb_Message_New(mini_table, arena);
47
+ }
48
+
49
+ void _upb_Message_Clear(upb_Message* msg, const upb_MiniTable* l) {
50
+ // Note: Can't use UPB_PTR_AT() here because we are doing pointer subtraction.
51
+ char* mem = (char*)msg - sizeof(upb_Message_Internal);
52
+ memset(mem, 0, upb_msg_sizeof(l));
53
+ }
54
+
55
+ static bool realloc_internal(upb_Message* msg, size_t need, upb_Arena* arena) {
56
+ upb_Message_Internal* in = upb_Message_Getinternal(msg);
57
+ if (!in->internal) {
58
+ /* No internal data, allocate from scratch. */
59
+ size_t size = UPB_MAX(128, upb_Log2CeilingSize(need + overhead));
60
+ upb_Message_InternalData* internal = upb_Arena_Malloc(arena, size);
61
+ if (!internal) return false;
62
+ internal->size = size;
63
+ internal->unknown_end = overhead;
64
+ internal->ext_begin = size;
65
+ in->internal = internal;
66
+ } else if (in->internal->ext_begin - in->internal->unknown_end < need) {
67
+ /* Internal data is too small, reallocate. */
68
+ size_t new_size = upb_Log2CeilingSize(in->internal->size + need);
69
+ size_t ext_bytes = in->internal->size - in->internal->ext_begin;
70
+ size_t new_ext_begin = new_size - ext_bytes;
71
+ upb_Message_InternalData* internal =
72
+ upb_Arena_Realloc(arena, in->internal, in->internal->size, new_size);
73
+ if (!internal) return false;
74
+ if (ext_bytes) {
75
+ /* Need to move extension data to the end. */
76
+ char* ptr = (char*)internal;
77
+ memmove(ptr + new_ext_begin, ptr + internal->ext_begin, ext_bytes);
78
+ }
79
+ internal->ext_begin = new_ext_begin;
80
+ internal->size = new_size;
81
+ in->internal = internal;
82
+ }
83
+ UPB_ASSERT(in->internal->ext_begin - in->internal->unknown_end >= need);
84
+ return true;
85
+ }
86
+
87
+ bool _upb_Message_AddUnknown(upb_Message* msg, const char* data, size_t len,
88
+ upb_Arena* arena) {
89
+ if (!realloc_internal(msg, len, arena)) return false;
90
+ upb_Message_Internal* in = upb_Message_Getinternal(msg);
91
+ memcpy(UPB_PTR_AT(in->internal, in->internal->unknown_end, char), data, len);
92
+ in->internal->unknown_end += len;
93
+ return true;
94
+ }
95
+
96
+ void _upb_Message_DiscardUnknown_shallow(upb_Message* msg) {
97
+ upb_Message_Internal* in = upb_Message_Getinternal(msg);
98
+ if (in->internal) {
99
+ in->internal->unknown_end = overhead;
100
+ }
101
+ }
102
+
103
+ const char* upb_Message_GetUnknown(const upb_Message* msg, size_t* len) {
104
+ const upb_Message_Internal* in = upb_Message_Getinternal(msg);
105
+ if (in->internal) {
106
+ *len = in->internal->unknown_end - overhead;
107
+ return (char*)(in->internal + 1);
108
+ } else {
109
+ *len = 0;
110
+ return NULL;
111
+ }
112
+ }
113
+
114
+ void upb_Message_DeleteUnknown(upb_Message* msg, const char* data, size_t len) {
115
+ upb_Message_Internal* in = upb_Message_Getinternal(msg);
116
+ const char* internal_unknown_end =
117
+ UPB_PTR_AT(in->internal, in->internal->unknown_end, char);
118
+ #ifndef NDEBUG
119
+ size_t full_unknown_size;
120
+ const char* full_unknown = upb_Message_GetUnknown(msg, &full_unknown_size);
121
+ UPB_ASSERT((uintptr_t)data >= (uintptr_t)full_unknown);
122
+ UPB_ASSERT((uintptr_t)data < (uintptr_t)(full_unknown + full_unknown_size));
123
+ UPB_ASSERT((uintptr_t)(data + len) > (uintptr_t)data);
124
+ UPB_ASSERT((uintptr_t)(data + len) <= (uintptr_t)internal_unknown_end);
125
+ #endif
126
+ if ((data + len) != internal_unknown_end) {
127
+ memmove((char*)data, data + len, internal_unknown_end - data - len);
128
+ }
129
+ in->internal->unknown_end -= len;
130
+ }
131
+
132
+ const upb_Message_Extension* _upb_Message_Getexts(const upb_Message* msg,
133
+ size_t* count) {
134
+ const upb_Message_Internal* in = upb_Message_Getinternal(msg);
135
+ if (in->internal) {
136
+ *count = (in->internal->size - in->internal->ext_begin) /
137
+ sizeof(upb_Message_Extension);
138
+ return UPB_PTR_AT(in->internal, in->internal->ext_begin, void);
139
+ } else {
140
+ *count = 0;
141
+ return NULL;
142
+ }
143
+ }
144
+
145
+ const upb_Message_Extension* _upb_Message_Getext(
146
+ const upb_Message* msg, const upb_MiniTableExtension* e) {
147
+ size_t n;
148
+ const upb_Message_Extension* ext = _upb_Message_Getexts(msg, &n);
149
+
150
+ /* For now we use linear search exclusively to find extensions. If this
151
+ * becomes an issue due to messages with lots of extensions, we can introduce
152
+ * a table of some sort. */
153
+ for (size_t i = 0; i < n; i++) {
154
+ if (ext[i].ext == e) {
155
+ return &ext[i];
156
+ }
157
+ }
158
+
159
+ return NULL;
160
+ }
161
+
162
+ upb_Message_Extension* _upb_Message_GetOrCreateExtension(
163
+ upb_Message* msg, const upb_MiniTableExtension* e, upb_Arena* arena) {
164
+ upb_Message_Extension* ext =
165
+ (upb_Message_Extension*)_upb_Message_Getext(msg, e);
166
+ if (ext) return ext;
167
+ if (!realloc_internal(msg, sizeof(upb_Message_Extension), arena)) return NULL;
168
+ upb_Message_Internal* in = upb_Message_Getinternal(msg);
169
+ in->internal->ext_begin -= sizeof(upb_Message_Extension);
170
+ ext = UPB_PTR_AT(in->internal, in->internal->ext_begin, void);
171
+ memset(ext, 0, sizeof(upb_Message_Extension));
172
+ ext->ext = e;
173
+ return ext;
174
+ }
175
+
176
+ size_t upb_Message_ExtensionCount(const upb_Message* msg) {
177
+ size_t count;
178
+ _upb_Message_Getexts(msg, &count);
179
+ return count;
180
+ }
@@ -0,0 +1,69 @@
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
+ // Public APIs for message operations that do not depend on the schema.
29
+ //
30
+ // MiniTable-based accessors live in accessors.h.
31
+
32
+ #ifndef UPB_MESSAGE_MESSAGE_H_
33
+ #define UPB_MESSAGE_MESSAGE_H_
34
+
35
+ #include "upb/mem/arena.h"
36
+ #include "upb/mini_table/types.h"
37
+
38
+ // Must be last.
39
+ #include "upb/port/def.inc"
40
+
41
+ #ifdef __cplusplus
42
+ extern "C" {
43
+ #endif
44
+
45
+ // Creates a new message with the given mini_table on the given arena.
46
+ UPB_API upb_Message* upb_Message_New(const upb_MiniTable* mini_table,
47
+ upb_Arena* arena);
48
+
49
+ // Adds unknown data (serialized protobuf data) to the given message.
50
+ // The data is copied into the message instance.
51
+ void upb_Message_AddUnknown(upb_Message* msg, const char* data, size_t len,
52
+ upb_Arena* arena);
53
+
54
+ // Returns a reference to the message's unknown data.
55
+ const char* upb_Message_GetUnknown(const upb_Message* msg, size_t* len);
56
+
57
+ // Removes partial unknown data from message.
58
+ void upb_Message_DeleteUnknown(upb_Message* msg, const char* data, size_t len);
59
+
60
+ // Returns the number of extensions present in this message.
61
+ size_t upb_Message_ExtensionCount(const upb_Message* msg);
62
+
63
+ #ifdef __cplusplus
64
+ } /* extern "C" */
65
+ #endif
66
+
67
+ #include "upb/port/undef.inc"
68
+
69
+ #endif /* UPB_MESSAGE_MESSAGE_H_ */
@@ -0,0 +1,128 @@
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/mini_table/common.h"
29
+
30
+ #include <inttypes.h>
31
+
32
+ #include "upb/mem/arena.h"
33
+ #include "upb/mini_table/common_internal.h"
34
+
35
+ // Must be last.
36
+ #include "upb/port/def.inc"
37
+
38
+ const char _kUpb_ToBase92[] = {
39
+ ' ', '!', '#', '$', '%', '&', '(', ')', '*', '+', ',', '-', '.', '/',
40
+ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=',
41
+ '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',
42
+ 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',
43
+ 'Z', '[', ']', '^', '_', '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
44
+ 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
45
+ 'w', 'x', 'y', 'z', '{', '|', '}', '~',
46
+ };
47
+
48
+ const int8_t _kUpb_FromBase92[] = {
49
+ 0, 1, -1, 2, 3, 4, 5, -1, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
50
+ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
51
+ 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
52
+ 55, 56, 57, -1, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
53
+ 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
54
+ };
55
+
56
+ const upb_MiniTableField* upb_MiniTable_FindFieldByNumber(
57
+ const upb_MiniTable* t, uint32_t number) {
58
+ const size_t i = ((size_t)number) - 1; // 0 wraps to SIZE_MAX
59
+
60
+ // Ideal case: index into dense fields
61
+ if (i < t->dense_below) {
62
+ UPB_ASSERT(t->fields[i].number == number);
63
+ return &t->fields[i];
64
+ }
65
+
66
+ // Slow case: binary search
67
+ int lo = t->dense_below;
68
+ int hi = t->field_count - 1;
69
+ while (lo <= hi) {
70
+ int mid = (lo + hi) / 2;
71
+ uint32_t num = t->fields[mid].number;
72
+ if (num < number) {
73
+ lo = mid + 1;
74
+ continue;
75
+ }
76
+ if (num > number) {
77
+ hi = mid - 1;
78
+ continue;
79
+ }
80
+ return &t->fields[mid];
81
+ }
82
+ return NULL;
83
+ }
84
+
85
+ upb_FieldType upb_MiniTableField_Type(const upb_MiniTableField* field) {
86
+ if (field->mode & kUpb_LabelFlags_IsAlternate) {
87
+ if (field->UPB_PRIVATE(descriptortype) == kUpb_FieldType_Int32) {
88
+ return kUpb_FieldType_Enum;
89
+ } else if (field->UPB_PRIVATE(descriptortype) == kUpb_FieldType_Bytes) {
90
+ return kUpb_FieldType_String;
91
+ } else {
92
+ UPB_ASSERT(false);
93
+ }
94
+ }
95
+ return field->UPB_PRIVATE(descriptortype);
96
+ }
97
+
98
+ static bool upb_MiniTable_Is_Oneof(const upb_MiniTableField* f) {
99
+ return f->presence < 0;
100
+ }
101
+
102
+ const upb_MiniTableField* upb_MiniTable_GetOneof(const upb_MiniTable* m,
103
+ const upb_MiniTableField* f) {
104
+ if (UPB_UNLIKELY(!upb_MiniTable_Is_Oneof(f))) {
105
+ return NULL;
106
+ }
107
+ const upb_MiniTableField* ptr = &m->fields[0];
108
+ const upb_MiniTableField* end = &m->fields[m->field_count];
109
+ while (++ptr < end) {
110
+ if (ptr->presence == (*f).presence) {
111
+ return ptr;
112
+ }
113
+ }
114
+ return NULL;
115
+ }
116
+
117
+ bool upb_MiniTable_NextOneofField(const upb_MiniTable* m,
118
+ const upb_MiniTableField** f) {
119
+ const upb_MiniTableField* ptr = *f;
120
+ const upb_MiniTableField* end = &m->fields[m->field_count];
121
+ while (++ptr < end) {
122
+ if (ptr->presence == (*f)->presence) {
123
+ *f = ptr;
124
+ return true;
125
+ }
126
+ }
127
+ return false;
128
+ }
@@ -0,0 +1,170 @@
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_MINI_TABLE_COMMON_H_
29
+ #define UPB_MINI_TABLE_COMMON_H_
30
+
31
+ #include "upb/mini_table/field_internal.h"
32
+ #include "upb/mini_table/message_internal.h"
33
+ #include "upb/mini_table/sub_internal.h"
34
+
35
+ // Must be last.
36
+ #include "upb/port/def.inc"
37
+
38
+ typedef enum {
39
+ kUpb_FieldModifier_IsRepeated = 1 << 0,
40
+ kUpb_FieldModifier_IsPacked = 1 << 1,
41
+ kUpb_FieldModifier_IsClosedEnum = 1 << 2,
42
+ kUpb_FieldModifier_IsProto3Singular = 1 << 3,
43
+ kUpb_FieldModifier_IsRequired = 1 << 4,
44
+ } kUpb_FieldModifier;
45
+
46
+ typedef enum {
47
+ kUpb_MessageModifier_ValidateUtf8 = 1 << 0,
48
+ kUpb_MessageModifier_DefaultIsPacked = 1 << 1,
49
+ kUpb_MessageModifier_IsExtendable = 1 << 2,
50
+ } kUpb_MessageModifier;
51
+
52
+ #ifdef __cplusplus
53
+ extern "C" {
54
+ #endif
55
+
56
+ UPB_API const upb_MiniTableField* upb_MiniTable_FindFieldByNumber(
57
+ const upb_MiniTable* table, uint32_t number);
58
+
59
+ UPB_API_INLINE const upb_MiniTableField* upb_MiniTable_GetFieldByIndex(
60
+ const upb_MiniTable* t, uint32_t index) {
61
+ return &t->fields[index];
62
+ }
63
+
64
+ UPB_API upb_FieldType upb_MiniTableField_Type(const upb_MiniTableField* field);
65
+
66
+ UPB_API_INLINE upb_CType upb_MiniTableField_CType(const upb_MiniTableField* f) {
67
+ switch (f->UPB_PRIVATE(descriptortype)) {
68
+ case kUpb_FieldType_Double:
69
+ return kUpb_CType_Double;
70
+ case kUpb_FieldType_Float:
71
+ return kUpb_CType_Float;
72
+ case kUpb_FieldType_Int64:
73
+ case kUpb_FieldType_SInt64:
74
+ case kUpb_FieldType_SFixed64:
75
+ return kUpb_CType_Int64;
76
+ case kUpb_FieldType_Int32:
77
+ case kUpb_FieldType_SFixed32:
78
+ case kUpb_FieldType_SInt32:
79
+ return kUpb_CType_Int32;
80
+ case kUpb_FieldType_UInt64:
81
+ case kUpb_FieldType_Fixed64:
82
+ return kUpb_CType_UInt64;
83
+ case kUpb_FieldType_UInt32:
84
+ case kUpb_FieldType_Fixed32:
85
+ return kUpb_CType_UInt32;
86
+ case kUpb_FieldType_Enum:
87
+ return kUpb_CType_Enum;
88
+ case kUpb_FieldType_Bool:
89
+ return kUpb_CType_Bool;
90
+ case kUpb_FieldType_String:
91
+ return kUpb_CType_String;
92
+ case kUpb_FieldType_Bytes:
93
+ return kUpb_CType_Bytes;
94
+ case kUpb_FieldType_Group:
95
+ case kUpb_FieldType_Message:
96
+ return kUpb_CType_Message;
97
+ }
98
+ UPB_UNREACHABLE();
99
+ }
100
+
101
+ UPB_API_INLINE bool upb_MiniTableField_IsExtension(
102
+ const upb_MiniTableField* field) {
103
+ return field->mode & kUpb_LabelFlags_IsExtension;
104
+ }
105
+
106
+ UPB_API_INLINE bool upb_MiniTableField_IsClosedEnum(
107
+ const upb_MiniTableField* field) {
108
+ return field->UPB_PRIVATE(descriptortype) == kUpb_FieldType_Enum;
109
+ }
110
+
111
+ UPB_API_INLINE bool upb_MiniTableField_HasPresence(
112
+ const upb_MiniTableField* field) {
113
+ if (upb_MiniTableField_IsExtension(field)) {
114
+ return !upb_IsRepeatedOrMap(field);
115
+ } else {
116
+ return field->presence != 0;
117
+ }
118
+ }
119
+
120
+ // Returns the MiniTable for this message field. If the field is unlinked,
121
+ // returns NULL.
122
+ UPB_API_INLINE const upb_MiniTable* upb_MiniTable_GetSubMessageTable(
123
+ const upb_MiniTable* mini_table, const upb_MiniTableField* field) {
124
+ UPB_ASSERT(upb_MiniTableField_CType(field) == kUpb_CType_Message);
125
+ return mini_table->subs[field->UPB_PRIVATE(submsg_index)].submsg;
126
+ }
127
+
128
+ // Returns the MiniTableEnum for this enum field. If the field is unlinked,
129
+ // returns NULL.
130
+ UPB_API_INLINE const upb_MiniTableEnum* upb_MiniTable_GetSubEnumTable(
131
+ const upb_MiniTable* mini_table, const upb_MiniTableField* field) {
132
+ UPB_ASSERT(upb_MiniTableField_CType(field) == kUpb_CType_Enum);
133
+ return mini_table->subs[field->UPB_PRIVATE(submsg_index)].subenum;
134
+ }
135
+
136
+ // Returns true if this MiniTable field is linked to a MiniTable for the
137
+ // sub-message.
138
+ UPB_API_INLINE bool upb_MiniTable_MessageFieldIsLinked(
139
+ const upb_MiniTable* mini_table, const upb_MiniTableField* field) {
140
+ return upb_MiniTable_GetSubMessageTable(mini_table, field) != NULL;
141
+ }
142
+
143
+ // If this field is in a oneof, returns the first field in the oneof.
144
+ //
145
+ // Otherwise returns NULL.
146
+ //
147
+ // Usage:
148
+ // const upb_MiniTableField* field = upb_MiniTable_GetOneof(m, f);
149
+ // do {
150
+ // ..
151
+ // } while (upb_MiniTable_NextOneofField(m, &field);
152
+ //
153
+ const upb_MiniTableField* upb_MiniTable_GetOneof(const upb_MiniTable* m,
154
+ const upb_MiniTableField* f);
155
+
156
+ // Iterates to the next field in the oneof. If this is the last field in the
157
+ // oneof, returns false. The ordering of fields in the oneof is not
158
+ // guaranteed.
159
+ // REQUIRES: |f| is the field initialized by upb_MiniTable_GetOneof and updated
160
+ // by prior upb_MiniTable_NextOneofField calls.
161
+ bool upb_MiniTable_NextOneofField(const upb_MiniTable* m,
162
+ const upb_MiniTableField** f);
163
+
164
+ #ifdef __cplusplus
165
+ } /* extern "C" */
166
+ #endif
167
+
168
+ #include "upb/port/undef.inc"
169
+
170
+ #endif /* UPB_MINI_TABLE_COMMON_H_ */
@@ -0,0 +1,111 @@
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_MINI_TABLE_COMMON_INTERNAL_H_
29
+ #define UPB_MINI_TABLE_COMMON_INTERNAL_H_
30
+
31
+ #include "upb/base/descriptor_constants.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ typedef enum {
37
+ kUpb_EncodedType_Double = 0,
38
+ kUpb_EncodedType_Float = 1,
39
+ kUpb_EncodedType_Fixed32 = 2,
40
+ kUpb_EncodedType_Fixed64 = 3,
41
+ kUpb_EncodedType_SFixed32 = 4,
42
+ kUpb_EncodedType_SFixed64 = 5,
43
+ kUpb_EncodedType_Int32 = 6,
44
+ kUpb_EncodedType_UInt32 = 7,
45
+ kUpb_EncodedType_SInt32 = 8,
46
+ kUpb_EncodedType_Int64 = 9,
47
+ kUpb_EncodedType_UInt64 = 10,
48
+ kUpb_EncodedType_SInt64 = 11,
49
+ kUpb_EncodedType_OpenEnum = 12,
50
+ kUpb_EncodedType_Bool = 13,
51
+ kUpb_EncodedType_Bytes = 14,
52
+ kUpb_EncodedType_String = 15,
53
+ kUpb_EncodedType_Group = 16,
54
+ kUpb_EncodedType_Message = 17,
55
+ kUpb_EncodedType_ClosedEnum = 18,
56
+
57
+ kUpb_EncodedType_RepeatedBase = 20,
58
+ } upb_EncodedType;
59
+
60
+ typedef enum {
61
+ kUpb_EncodedFieldModifier_FlipPacked = 1 << 0,
62
+ kUpb_EncodedFieldModifier_IsRequired = 1 << 1,
63
+ kUpb_EncodedFieldModifier_IsProto3Singular = 1 << 2,
64
+ } upb_EncodedFieldModifier;
65
+
66
+ enum {
67
+ kUpb_EncodedValue_MinField = ' ',
68
+ kUpb_EncodedValue_MaxField = 'I',
69
+ kUpb_EncodedValue_MinModifier = 'L',
70
+ kUpb_EncodedValue_MaxModifier = '[',
71
+ kUpb_EncodedValue_End = '^',
72
+ kUpb_EncodedValue_MinSkip = '_',
73
+ kUpb_EncodedValue_MaxSkip = '~',
74
+ kUpb_EncodedValue_OneofSeparator = '~',
75
+ kUpb_EncodedValue_FieldSeparator = '|',
76
+ kUpb_EncodedValue_MinOneofField = ' ',
77
+ kUpb_EncodedValue_MaxOneofField = 'b',
78
+ kUpb_EncodedValue_MaxEnumMask = 'A',
79
+ };
80
+
81
+ enum {
82
+ kUpb_EncodedVersion_EnumV1 = '!',
83
+ kUpb_EncodedVersion_ExtensionV1 = '#',
84
+ kUpb_EncodedVersion_MapV1 = '%',
85
+ kUpb_EncodedVersion_MessageV1 = '$',
86
+ kUpb_EncodedVersion_MessageSetV1 = '&',
87
+ };
88
+
89
+ #ifdef __cplusplus
90
+ extern "C" {
91
+ #endif
92
+
93
+ UPB_INLINE char _upb_ToBase92(int8_t ch) {
94
+ extern const char _kUpb_ToBase92[];
95
+ UPB_ASSERT(0 <= ch && ch < 92);
96
+ return _kUpb_ToBase92[ch];
97
+ }
98
+
99
+ UPB_INLINE char _upb_FromBase92(uint8_t ch) {
100
+ extern const int8_t _kUpb_FromBase92[];
101
+ if (' ' > ch || ch > '~') return -1;
102
+ return _kUpb_FromBase92[ch - ' '];
103
+ }
104
+
105
+ #ifdef __cplusplus
106
+ } /* extern "C" */
107
+ #endif
108
+
109
+ #include "upb/port/undef.inc"
110
+
111
+ #endif /* UPB_MINI_TABLE_COMMON_INTERNAL_H_ */