grpc 1.54.2 → 1.55.0

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

Potentially problematic release.


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

Files changed (956) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +66 -37
  3. data/include/grpc/impl/grpc_types.h +2 -0
  4. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +1 -1
  5. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -1
  6. data/src/core/ext/filters/client_channel/client_channel.cc +13 -17
  7. data/src/core/ext/filters/client_channel/client_channel.h +20 -16
  8. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +1 -1
  9. data/src/core/ext/filters/client_channel/client_channel_internal.h +8 -40
  10. data/src/core/ext/filters/client_channel/client_channel_service_config.cc +2 -2
  11. data/src/core/ext/filters/client_channel/config_selector.h +5 -17
  12. data/src/core/ext/filters/client_channel/health/health_check_client.cc +1 -1
  13. data/src/core/ext/filters/client_channel/http_proxy.cc +34 -1
  14. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +2 -2
  15. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +1 -1
  16. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  17. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +5 -5
  18. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +3 -3
  19. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +44 -45
  20. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +2 -3
  21. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +3 -3
  22. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +3 -3
  23. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +4 -4
  24. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +3 -3
  25. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +9 -9
  26. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +4 -4
  27. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +5 -4
  28. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +19 -118
  29. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h +30 -0
  30. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +60 -0
  31. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h +27 -0
  32. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +524 -0
  33. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h +35 -0
  34. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc +97 -0
  35. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h +32 -0
  36. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +2 -13
  37. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h +24 -0
  38. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +3 -2
  39. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +7 -34
  40. data/src/core/ext/filters/client_channel/retry_filter.cc +23 -55
  41. data/src/core/ext/filters/client_channel/retry_service_config.cc +8 -8
  42. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +1 -1
  43. data/src/core/ext/filters/http/message_compress/compression_filter.cc +2 -2
  44. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +68 -69
  45. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +78 -23
  46. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +21 -0
  47. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +70 -0
  48. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -7
  49. data/src/core/ext/transport/chttp2/transport/frame_ping.h +0 -3
  50. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +1 -0
  51. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -0
  52. data/src/core/ext/transport/chttp2/transport/internal.h +3 -4
  53. data/src/core/ext/transport/chttp2/transport/writing.cc +14 -3
  54. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +87 -52
  55. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +414 -181
  56. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -60
  57. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +481 -224
  58. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +90 -55
  59. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +415 -188
  60. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +357 -210
  61. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1572 -729
  62. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +30 -17
  63. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +144 -47
  64. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +34 -21
  65. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -62
  66. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +27 -14
  67. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +78 -38
  68. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +20 -11
  69. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +48 -26
  70. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +20 -11
  71. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +48 -26
  72. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +109 -62
  73. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +566 -244
  74. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +21 -12
  75. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +45 -30
  76. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +22 -19
  77. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +82 -29
  78. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +23 -16
  79. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +45 -30
  80. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +230 -143
  81. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +733 -404
  82. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +417 -264
  83. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1839 -899
  84. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -41
  85. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +286 -148
  86. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +531 -334
  87. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2017 -1131
  88. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -12
  89. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +45 -30
  90. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +89 -52
  91. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +347 -232
  92. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +264 -165
  93. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +888 -476
  94. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +139 -80
  95. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +527 -274
  96. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -13
  97. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +50 -36
  98. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +380 -221
  99. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1168 -611
  100. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +166 -94
  101. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +666 -292
  102. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +18 -11
  103. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +37 -26
  104. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +21 -12
  105. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +45 -30
  106. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +30 -17
  107. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +144 -47
  108. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +274 -167
  109. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +789 -440
  110. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +228 -137
  111. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +1100 -501
  112. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -13
  113. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +60 -37
  114. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +350 -211
  115. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1072 -646
  116. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +33 -18
  117. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +117 -51
  118. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +34 -19
  119. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +118 -56
  120. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +38 -21
  121. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +148 -64
  122. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +31 -18
  123. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +143 -65
  124. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +22 -13
  125. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +51 -37
  126. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +78 -43
  127. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +265 -127
  128. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +145 -88
  129. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +438 -241
  130. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +115 -62
  131. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +559 -227
  132. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +18 -11
  133. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +35 -26
  134. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +175 -118
  135. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +857 -442
  136. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +172 -95
  137. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +864 -374
  138. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -27
  139. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +159 -110
  140. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +39 -18
  141. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +74 -56
  142. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +28 -15
  143. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +71 -45
  144. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +131 -74
  145. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +489 -249
  146. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +135 -80
  147. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +505 -245
  148. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +248 -139
  149. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +933 -433
  150. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +80 -49
  151. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +616 -201
  152. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +1283 -776
  153. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +5422 -2519
  154. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +49 -28
  155. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +164 -84
  156. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +228 -141
  157. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +738 -399
  158. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +20 -11
  159. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +48 -26
  160. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +21 -12
  161. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +45 -30
  162. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +32 -19
  163. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +70 -49
  164. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +27 -14
  165. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +110 -43
  166. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +46 -25
  167. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +259 -100
  168. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +21 -12
  169. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +45 -30
  170. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +18 -11
  171. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +35 -26
  172. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +42 -23
  173. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +108 -70
  174. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +7 -4
  175. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +21 -16
  176. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +43 -24
  177. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +110 -75
  178. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +30 -17
  179. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +95 -50
  180. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +16 -9
  181. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -23
  182. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +60 -37
  183. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +150 -108
  184. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +74 -43
  185. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +357 -167
  186. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +44 -25
  187. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +114 -80
  188. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +41 -20
  189. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +245 -82
  190. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +32 -19
  191. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +73 -51
  192. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +474 -296
  193. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2121 -1076
  194. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +18 -11
  195. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +35 -26
  196. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +34 -21
  197. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +112 -78
  198. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +72 -45
  199. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +193 -138
  200. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +34 -21
  201. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +119 -78
  202. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +18 -11
  203. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +35 -26
  204. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +7 -4
  205. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +15 -10
  206. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +184 -96
  207. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +907 -360
  208. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +56 -33
  209. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -101
  210. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +188 -111
  211. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +816 -419
  212. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +32 -19
  213. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +109 -53
  214. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +10 -7
  215. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +18 -14
  216. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +300 -177
  217. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +1284 -522
  218. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +42 -23
  219. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +188 -75
  220. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +130 -83
  221. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +510 -238
  222. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +22 -13
  223. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +55 -34
  224. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +39 -26
  225. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +124 -68
  226. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +21 -12
  227. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +47 -30
  228. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +52 -29
  229. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +92 -62
  230. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +37 -20
  231. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +133 -63
  232. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +22 -13
  233. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +91 -40
  234. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -12
  235. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +50 -32
  236. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +18 -11
  237. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +37 -26
  238. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +46 -27
  239. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +101 -70
  240. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +13 -10
  241. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +25 -22
  242. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +40 -23
  243. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +161 -75
  244. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +31 -18
  245. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +114 -56
  246. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +46 -29
  247. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +139 -91
  248. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +65 -42
  249. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +200 -121
  250. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +80 -45
  251. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +208 -131
  252. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +34 -21
  253. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +74 -53
  254. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +7 -4
  255. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +13 -8
  256. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +16 -9
  257. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +28 -18
  258. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +28 -15
  259. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +55 -34
  260. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +43 -22
  261. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +91 -53
  262. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +35 -20
  263. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +92 -57
  264. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +7 -4
  265. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +13 -8
  266. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -11
  267. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +48 -26
  268. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +23 -14
  269. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +61 -41
  270. data/src/core/ext/upb-generated/google/api/annotations.upb.c +14 -11
  271. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -20
  272. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +255 -154
  273. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +934 -450
  274. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +299 -180
  275. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +946 -483
  276. data/src/core/ext/upb-generated/google/api/http.upb.c +68 -35
  277. data/src/core/ext/upb-generated/google/api/http.upb.h +284 -120
  278. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +22 -13
  279. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +95 -37
  280. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -10
  281. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +38 -22
  282. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +1018 -424
  283. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +3851 -1412
  284. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -10
  285. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +38 -22
  286. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +10 -7
  287. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +18 -14
  288. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +62 -39
  289. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +207 -102
  290. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -10
  291. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +38 -22
  292. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +90 -51
  293. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +157 -107
  294. data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -13
  295. data/src/core/ext/upb-generated/google/rpc/status.upb.h +95 -37
  296. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +59 -34
  297. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +154 -92
  298. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +43 -24
  299. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +118 -60
  300. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +250 -145
  301. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +919 -415
  302. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +34 -19
  303. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +76 -51
  304. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +25 -14
  305. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +45 -30
  306. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +144 -81
  307. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +405 -217
  308. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +51 -26
  309. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +153 -61
  310. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +173 -102
  311. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +855 -298
  312. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +68 -49
  313. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +155 -104
  314. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +26 -17
  315. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +55 -34
  316. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +12 -9
  317. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +31 -14
  318. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +26 -17
  319. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +55 -34
  320. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +23 -16
  321. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +45 -30
  322. data/src/core/ext/upb-generated/validate/validate.upb.c +845 -455
  323. data/src/core/ext/upb-generated/validate/validate.upb.h +4347 -1908
  324. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +68 -49
  325. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +155 -104
  326. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +26 -17
  327. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +55 -34
  328. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +12 -9
  329. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +31 -14
  330. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +65 -44
  331. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +137 -91
  332. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +23 -16
  333. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +45 -30
  334. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +16 -9
  335. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +28 -18
  336. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +21 -12
  337. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +45 -30
  338. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +37 -22
  339. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +96 -63
  340. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +26 -17
  341. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +52 -29
  342. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +21 -12
  343. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +45 -30
  344. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +23 -14
  345. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +62 -42
  346. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +44 -25
  347. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +169 -79
  348. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +27 -14
  349. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +65 -38
  350. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +69 -38
  351. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +167 -76
  352. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +21 -12
  353. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +89 -34
  354. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +18 -11
  355. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +35 -26
  356. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +32 -19
  357. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +150 -54
  358. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +10 -7
  359. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +18 -14
  360. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +34 -21
  361. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +161 -63
  362. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +162 -101
  363. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +501 -293
  364. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +85 -52
  365. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +430 -164
  366. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +24 -15
  367. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +53 -37
  368. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +40 -23
  369. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +161 -75
  370. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +37 -22
  371. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +92 -66
  372. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +43 -22
  373. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +91 -53
  374. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +21 -12
  375. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +45 -30
  376. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +1 -1
  377. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +6 -5
  378. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +1 -1
  379. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +6 -5
  380. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +1 -1
  381. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +6 -5
  382. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +1 -1
  383. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +6 -5
  384. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +1 -1
  385. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +6 -5
  386. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +1 -1
  387. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +6 -5
  388. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +1 -1
  389. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +6 -5
  390. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +1 -1
  391. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +6 -5
  392. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +1 -1
  393. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +6 -5
  394. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +1 -1
  395. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +6 -5
  396. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +1 -1
  397. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +6 -5
  398. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +1 -1
  399. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +6 -5
  400. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +1 -1
  401. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +6 -5
  402. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +1 -1
  403. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +6 -5
  404. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +252 -253
  405. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +6 -5
  406. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +1 -1
  407. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +6 -5
  408. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +1 -1
  409. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +6 -5
  410. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +1 -1
  411. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +6 -5
  412. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +1 -1
  413. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +6 -5
  414. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +1 -1
  415. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +6 -5
  416. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +1 -1
  417. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +6 -5
  418. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +1 -1
  419. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +6 -5
  420. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +1 -1
  421. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +6 -5
  422. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +13 -12
  423. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +11 -5
  424. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +1 -1
  425. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +6 -5
  426. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +1 -1
  427. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +6 -5
  428. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +1 -1
  429. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +6 -5
  430. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +1 -1
  431. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +6 -5
  432. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +1 -1
  433. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +6 -5
  434. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +1 -1
  435. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +6 -5
  436. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +44 -44
  437. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +6 -5
  438. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +1 -1
  439. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +6 -5
  440. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +1 -1
  441. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +6 -5
  442. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +1 -1
  443. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +6 -5
  444. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +1 -1
  445. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +6 -5
  446. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +1 -1
  447. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +6 -5
  448. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +1 -1
  449. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +6 -5
  450. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +1 -1
  451. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +6 -5
  452. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +1 -1
  453. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +6 -5
  454. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +1 -1
  455. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +6 -5
  456. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +1 -1
  457. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +6 -5
  458. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +1 -1
  459. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +6 -5
  460. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +1 -1
  461. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +6 -5
  462. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +1 -1
  463. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +6 -5
  464. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +1 -1
  465. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +6 -5
  466. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +1 -1
  467. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +6 -5
  468. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +1 -1
  469. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +6 -5
  470. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +134 -128
  471. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +11 -5
  472. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +1 -1
  473. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +6 -5
  474. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +1 -1
  475. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +6 -5
  476. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +1 -1
  477. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +6 -5
  478. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +1 -1
  479. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +6 -5
  480. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +1 -1
  481. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +6 -5
  482. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +1 -1
  483. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +6 -5
  484. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +1 -1
  485. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +6 -5
  486. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +1 -1
  487. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +6 -5
  488. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +1 -1
  489. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +6 -5
  490. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +1 -1
  491. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +6 -5
  492. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +1 -1
  493. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +6 -5
  494. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +1 -1
  495. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +6 -5
  496. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +1 -1
  497. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +6 -5
  498. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +1 -1
  499. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +6 -5
  500. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +1 -1
  501. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +6 -5
  502. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +1 -1
  503. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +6 -5
  504. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +1 -1
  505. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +6 -5
  506. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +1 -1
  507. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +6 -5
  508. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +1 -1
  509. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +6 -5
  510. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +1 -1
  511. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +6 -5
  512. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +1 -1
  513. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +6 -5
  514. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +379 -376
  515. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +6 -5
  516. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +1 -1
  517. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +6 -5
  518. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +1 -1
  519. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +6 -5
  520. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +138 -136
  521. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +6 -5
  522. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +1 -1
  523. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +6 -5
  524. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +1 -1
  525. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +6 -5
  526. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +1 -1
  527. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +6 -5
  528. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +1 -1
  529. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +6 -5
  530. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +1 -1
  531. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +6 -5
  532. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +1 -1
  533. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +6 -5
  534. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +12 -13
  535. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +6 -5
  536. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +1 -1
  537. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +6 -5
  538. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +1 -1
  539. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +6 -5
  540. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +1 -1
  541. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +6 -5
  542. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  543. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  544. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +1 -1
  545. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +6 -5
  546. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +1 -1
  547. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +6 -5
  548. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +1 -1
  549. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +6 -5
  550. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +1 -1
  551. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +6 -5
  552. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +1 -1
  553. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +6 -5
  554. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +1 -1
  555. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +6 -5
  556. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +1 -1
  557. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +6 -5
  558. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +1 -1
  559. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +6 -5
  560. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +1 -1
  561. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +6 -5
  562. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +1 -1
  563. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +6 -5
  564. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +1 -1
  565. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +6 -5
  566. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +1 -1
  567. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +6 -5
  568. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +1 -1
  569. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +6 -5
  570. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +1 -1
  571. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +6 -5
  572. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +1 -1
  573. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +6 -5
  574. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +1 -1
  575. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +6 -5
  576. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +1 -1
  577. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +6 -5
  578. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +1 -1
  579. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +6 -5
  580. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +1 -1
  581. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +6 -5
  582. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +1 -1
  583. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +6 -5
  584. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +1 -1
  585. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +6 -5
  586. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +1 -1
  587. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +6 -5
  588. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +1 -1
  589. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +6 -5
  590. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +1 -1
  591. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +6 -5
  592. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +1 -1
  593. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +6 -5
  594. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +1 -1
  595. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +6 -5
  596. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +329 -273
  597. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +11 -5
  598. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +1 -1
  599. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +6 -5
  600. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +1 -1
  601. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +6 -5
  602. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +1 -1
  603. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +6 -5
  604. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +1 -1
  605. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +6 -5
  606. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +1 -1
  607. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +6 -5
  608. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +1 -1
  609. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +6 -5
  610. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +1 -1
  611. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +6 -5
  612. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +1 -1
  613. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +6 -5
  614. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +1 -1
  615. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +6 -5
  616. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +1 -1
  617. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +6 -5
  618. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +1 -1
  619. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +6 -5
  620. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +1 -1
  621. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +6 -5
  622. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +1 -1
  623. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +6 -5
  624. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +1 -1
  625. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +6 -5
  626. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +1 -1
  627. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +6 -5
  628. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +1 -1
  629. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +6 -5
  630. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +1 -1
  631. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +6 -5
  632. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +1 -1
  633. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +6 -5
  634. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +1 -1
  635. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +6 -5
  636. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +1 -1
  637. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +6 -5
  638. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +1 -1
  639. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +6 -5
  640. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +1 -1
  641. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +6 -5
  642. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +1 -1
  643. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +6 -5
  644. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +1 -1
  645. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +6 -5
  646. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +1 -1
  647. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +6 -5
  648. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +1 -1
  649. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +6 -5
  650. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +1 -1
  651. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +6 -5
  652. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +1 -1
  653. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +6 -5
  654. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +1 -1
  655. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +6 -5
  656. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  657. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  658. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +1 -1
  659. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +6 -5
  660. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +1 -1
  661. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +6 -5
  662. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +1 -1
  663. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +6 -5
  664. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +1 -1
  665. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +6 -5
  666. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +1 -1
  667. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +6 -5
  668. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +1 -1
  669. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +6 -5
  670. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +1 -1
  671. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +6 -5
  672. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +1 -1
  673. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +6 -5
  674. data/src/core/ext/xds/certificate_provider_store.cc +4 -4
  675. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +7 -7
  676. data/src/core/ext/xds/upb_utils.h +1 -1
  677. data/src/core/ext/xds/xds_api.cc +34 -14
  678. data/src/core/ext/xds/xds_api.h +2 -2
  679. data/src/core/ext/xds/xds_bootstrap.cc +3 -3
  680. data/src/core/ext/xds/xds_bootstrap_grpc.cc +15 -15
  681. data/src/core/ext/xds/xds_client.cc +24 -3
  682. data/src/core/ext/xds/xds_client.h +1 -1
  683. data/src/core/ext/xds/xds_cluster.cc +26 -34
  684. data/src/core/ext/xds/xds_cluster.h +1 -2
  685. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +4 -3
  686. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +2 -2
  687. data/src/core/ext/xds/xds_common_types.cc +5 -4
  688. data/src/core/ext/xds/xds_endpoint.cc +5 -2
  689. data/src/core/ext/xds/xds_endpoint.h +1 -1
  690. data/src/core/ext/xds/xds_http_fault_filter.cc +2 -2
  691. data/src/core/ext/xds/xds_http_fault_filter.h +1 -1
  692. data/src/core/ext/xds/xds_http_filters.h +3 -2
  693. data/src/core/ext/xds/xds_http_rbac_filter.cc +6 -8
  694. data/src/core/ext/xds/xds_http_rbac_filter.h +1 -1
  695. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +2 -2
  696. data/src/core/ext/xds/xds_http_stateful_session_filter.h +1 -1
  697. data/src/core/ext/xds/xds_lb_policy_registry.cc +4 -22
  698. data/src/core/ext/xds/xds_listener.cc +10 -4
  699. data/src/core/ext/xds/xds_listener.h +1 -1
  700. data/src/core/ext/xds/xds_resource_type.h +2 -2
  701. data/src/core/ext/xds/xds_route_config.cc +8 -5
  702. data/src/core/ext/xds/xds_route_config.h +1 -1
  703. data/src/core/lib/channel/channelz.cc +5 -4
  704. data/src/core/lib/channel/channelz_registry.cc +7 -6
  705. data/src/core/lib/channel/connected_channel.cc +82 -27
  706. data/src/core/lib/channel/promise_based_filter.cc +2 -8
  707. data/src/core/lib/debug/trace.cc +16 -7
  708. data/src/core/lib/debug/trace.h +12 -4
  709. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +8 -26
  710. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +6 -1
  711. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -0
  712. data/src/core/lib/event_engine/shim.cc +2 -0
  713. data/src/core/lib/event_engine/trace.cc +1 -0
  714. data/src/core/lib/event_engine/trace.h +6 -0
  715. data/src/core/lib/experiments/experiments.cc +3 -0
  716. data/src/core/lib/experiments/experiments.h +4 -1
  717. data/src/core/lib/gpr/posix/time.cc +5 -0
  718. data/src/core/lib/gprpp/status_helper.cc +2 -2
  719. data/src/core/lib/gprpp/validation_errors.cc +8 -3
  720. data/src/core/lib/gprpp/validation_errors.h +16 -9
  721. data/src/core/lib/iomgr/buffer_list.h +0 -1
  722. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  723. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  724. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -0
  725. data/src/core/lib/iomgr/timer_generic.cc +17 -16
  726. data/src/core/lib/json/json.h +61 -113
  727. data/src/core/lib/json/json_object_loader.cc +20 -20
  728. data/src/core/lib/json/json_object_loader.h +8 -3
  729. data/src/core/lib/json/json_reader.cc +58 -38
  730. data/src/core/lib/json/json_reader.h +34 -0
  731. data/src/core/lib/json/json_util.cc +6 -6
  732. data/src/core/lib/json/json_util.h +5 -4
  733. data/src/core/lib/json/json_writer.cc +19 -19
  734. data/src/core/lib/json/json_writer.h +33 -0
  735. data/src/core/lib/load_balancing/lb_policy_registry.cc +7 -7
  736. data/src/core/lib/promise/pipe.h +7 -0
  737. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +35 -37
  738. data/src/core/lib/security/credentials/external/external_account_credentials.cc +60 -62
  739. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +22 -21
  740. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +28 -27
  741. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +4 -2
  742. data/src/core/lib/security/credentials/jwt/json_token.cc +6 -4
  743. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +8 -5
  744. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +39 -38
  745. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +17 -16
  746. data/src/core/lib/security/util/json_util.cc +5 -5
  747. data/src/core/lib/service_config/service_config_impl.cc +11 -5
  748. data/src/core/lib/slice/slice.h +2 -0
  749. data/src/core/lib/surface/call.cc +71 -26
  750. data/src/core/lib/surface/call.h +1 -5
  751. data/src/core/lib/surface/completion_queue.cc +2 -1
  752. data/src/core/lib/surface/server.cc +47 -19
  753. data/src/core/lib/surface/version.cc +2 -2
  754. data/src/core/lib/transport/batch_builder.h +9 -1
  755. data/src/core/lib/transport/metadata_batch.h +2 -59
  756. data/src/core/lib/transport/metadata_compression_traits.h +67 -0
  757. data/src/core/lib/transport/simple_slice_based_metadata.h +48 -0
  758. data/src/core/lib/transport/transport.h +3 -0
  759. data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -4
  760. data/src/ruby/lib/grpc/version.rb +1 -1
  761. data/third_party/abseil-cpp/absl/base/config.h +1 -1
  762. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +33 -47
  763. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +7 -4
  764. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +32 -2
  765. data/third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c +11 -12
  766. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +826 -0
  767. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +10 -12
  768. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +8 -10
  769. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +2 -1
  770. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +2 -1
  771. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +18 -14
  772. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +17 -21
  773. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +7 -3
  774. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +3 -4
  775. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +1 -72
  776. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +4 -2
  777. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +4 -3
  778. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +7 -3
  779. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +4 -2
  780. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +1 -1
  781. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -8
  782. data/third_party/boringssl-with-bazel/src/include/openssl/kyber.h +128 -0
  783. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +8 -1
  784. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +1 -1
  785. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +8 -12
  786. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +1 -10
  787. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +9 -2
  788. data/third_party/boringssl-with-bazel/src/ssl/internal.h +17 -17
  789. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +8 -4
  790. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  791. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +72 -5
  792. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +19 -21
  793. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +2 -1
  794. data/third_party/upb/upb/{table_internal.h → alloc.h} +6 -6
  795. data/third_party/upb/upb/arena.h +4 -193
  796. data/third_party/upb/upb/array.h +4 -51
  797. data/third_party/upb/upb/base/descriptor_constants.h +104 -0
  798. data/third_party/upb/upb/base/log2.h +57 -0
  799. data/third_party/upb/upb/{status.c → base/status.c} +2 -7
  800. data/third_party/upb/upb/base/status.h +66 -0
  801. data/third_party/upb/upb/base/string_view.h +75 -0
  802. data/third_party/upb/upb/{array.c → collections/array.c} +67 -36
  803. data/third_party/upb/upb/collections/array.h +85 -0
  804. data/third_party/upb/upb/collections/array_internal.h +135 -0
  805. data/third_party/upb/upb/{map.c → collections/map.c} +53 -26
  806. data/third_party/upb/upb/collections/map.h +135 -0
  807. data/third_party/upb/upb/collections/map_gencode_util.h +78 -0
  808. data/third_party/upb/upb/collections/map_internal.h +170 -0
  809. data/third_party/upb/upb/collections/map_sorter.c +166 -0
  810. data/third_party/upb/upb/collections/map_sorter_internal.h +109 -0
  811. data/third_party/upb/upb/{message_value.h → collections/message_value.h} +12 -13
  812. data/third_party/upb/upb/decode.h +3 -62
  813. data/third_party/upb/upb/def.h +4 -384
  814. data/third_party/upb/upb/def.hpp +3 -411
  815. data/third_party/upb/upb/encode.h +3 -48
  816. data/third_party/upb/upb/extension_registry.h +3 -52
  817. data/third_party/upb/upb/{table.c → hash/common.c} +52 -110
  818. data/third_party/upb/upb/hash/common.h +199 -0
  819. data/third_party/upb/upb/hash/int_table.h +102 -0
  820. data/third_party/upb/upb/hash/str_table.h +161 -0
  821. data/third_party/upb/upb/{json_decode.c → json/decode.c} +63 -98
  822. data/third_party/upb/upb/json/decode.h +52 -0
  823. data/third_party/upb/upb/{json_encode.c → json/encode.c} +69 -45
  824. data/third_party/upb/upb/json/encode.h +70 -0
  825. data/third_party/upb/upb/json_decode.h +4 -15
  826. data/third_party/upb/upb/json_encode.h +4 -33
  827. data/third_party/upb/upb/lex/atoi.c +68 -0
  828. data/third_party/upb/upb/lex/atoi.h +53 -0
  829. data/third_party/upb/upb/{upb.c → lex/round_trip.c} +2 -11
  830. data/third_party/upb/upb/{internal/upb.h → lex/round_trip.h} +17 -30
  831. data/third_party/upb/upb/lex/strtod.c +97 -0
  832. data/third_party/upb/upb/lex/strtod.h +46 -0
  833. data/third_party/upb/upb/lex/unicode.c +57 -0
  834. data/third_party/upb/upb/lex/unicode.h +77 -0
  835. data/third_party/upb/upb/map.h +4 -85
  836. data/third_party/upb/upb/mem/alloc.c +47 -0
  837. data/third_party/upb/upb/mem/alloc.h +98 -0
  838. data/third_party/upb/upb/mem/arena.c +367 -0
  839. data/third_party/upb/upb/mem/arena.h +160 -0
  840. data/third_party/upb/upb/mem/arena_internal.h +114 -0
  841. data/third_party/upb/upb/message/accessors.c +68 -0
  842. data/third_party/upb/upb/message/accessors.h +379 -0
  843. data/third_party/upb/upb/message/accessors_internal.h +325 -0
  844. data/third_party/upb/upb/message/extension_internal.h +83 -0
  845. data/third_party/upb/upb/message/internal.h +135 -0
  846. data/third_party/upb/upb/message/message.c +180 -0
  847. data/third_party/upb/upb/message/message.h +69 -0
  848. data/third_party/upb/upb/mini_table/common.c +128 -0
  849. data/third_party/upb/upb/mini_table/common.h +170 -0
  850. data/third_party/upb/upb/mini_table/common_internal.h +111 -0
  851. data/third_party/upb/upb/{mini_table.c → mini_table/decode.c} +513 -533
  852. data/third_party/upb/upb/mini_table/decode.h +179 -0
  853. data/third_party/upb/upb/mini_table/encode.c +300 -0
  854. data/third_party/upb/upb/mini_table/encode_internal.h +111 -0
  855. data/third_party/upb/upb/{mini_table.hpp → mini_table/encode_internal.hpp} +32 -8
  856. data/third_party/upb/upb/mini_table/enum_internal.h +88 -0
  857. data/third_party/upb/upb/mini_table/extension_internal.h +47 -0
  858. data/third_party/upb/upb/{extension_registry.c → mini_table/extension_registry.c} +27 -24
  859. data/third_party/upb/upb/mini_table/extension_registry.h +104 -0
  860. data/third_party/upb/upb/mini_table/field_internal.h +192 -0
  861. data/third_party/upb/upb/mini_table/file_internal.h +47 -0
  862. data/third_party/upb/upb/mini_table/message_internal.h +136 -0
  863. data/third_party/upb/upb/mini_table/sub_internal.h +38 -0
  864. data/third_party/upb/upb/mini_table/types.h +40 -0
  865. data/third_party/upb/upb/mini_table.h +4 -157
  866. data/third_party/upb/upb/msg.h +3 -38
  867. data/third_party/upb/upb/port/atomic.h +101 -0
  868. data/third_party/upb/upb/{port_def.inc → port/def.inc} +94 -27
  869. data/third_party/upb/upb/{port_undef.inc → port/undef.inc} +13 -3
  870. data/third_party/upb/upb/{internal → port}/vsnprintf_compat.h +5 -7
  871. data/third_party/upb/upb/reflection/common.h +67 -0
  872. data/third_party/upb/upb/reflection/def.h +42 -0
  873. data/third_party/upb/upb/reflection/def.hpp +610 -0
  874. data/third_party/upb/upb/reflection/def_builder.c +357 -0
  875. data/third_party/upb/upb/reflection/def_builder_internal.h +157 -0
  876. data/third_party/upb/upb/reflection/def_pool.c +462 -0
  877. data/third_party/upb/upb/reflection/def_pool.h +108 -0
  878. data/third_party/upb/upb/reflection/def_pool_internal.h +77 -0
  879. data/third_party/upb/upb/reflection/def_type.c +50 -0
  880. data/third_party/upb/upb/reflection/def_type.h +81 -0
  881. data/third_party/upb/upb/reflection/desc_state.c +53 -0
  882. data/third_party/upb/upb/reflection/desc_state_internal.h +64 -0
  883. data/third_party/upb/upb/reflection/enum_def.c +310 -0
  884. data/third_party/upb/upb/reflection/enum_def.h +80 -0
  885. data/third_party/upb/upb/reflection/enum_def_internal.h +56 -0
  886. data/third_party/upb/upb/reflection/enum_reserved_range.c +84 -0
  887. data/third_party/upb/upb/reflection/enum_reserved_range.h +51 -0
  888. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +55 -0
  889. data/third_party/upb/upb/reflection/enum_value_def.c +144 -0
  890. data/third_party/upb/upb/reflection/enum_value_def.h +57 -0
  891. data/third_party/upb/upb/reflection/enum_value_def_internal.h +57 -0
  892. data/third_party/upb/upb/reflection/extension_range.c +93 -0
  893. data/third_party/upb/upb/reflection/extension_range.h +55 -0
  894. data/third_party/upb/upb/reflection/extension_range_internal.h +54 -0
  895. data/third_party/upb/upb/reflection/field_def.c +930 -0
  896. data/third_party/upb/upb/reflection/field_def.h +91 -0
  897. data/third_party/upb/upb/reflection/field_def_internal.h +76 -0
  898. data/third_party/upb/upb/reflection/file_def.c +370 -0
  899. data/third_party/upb/upb/reflection/file_def.h +77 -0
  900. data/third_party/upb/upb/reflection/file_def_internal.h +57 -0
  901. data/third_party/upb/upb/reflection/message.c +233 -0
  902. data/third_party/upb/upb/reflection/message.h +102 -0
  903. data/third_party/upb/upb/reflection/message.hpp +37 -0
  904. data/third_party/upb/upb/reflection/message_def.c +718 -0
  905. data/third_party/upb/upb/reflection/message_def.h +174 -0
  906. data/third_party/upb/upb/reflection/message_def_internal.h +63 -0
  907. data/third_party/upb/upb/reflection/message_reserved_range.c +81 -0
  908. data/third_party/upb/upb/reflection/message_reserved_range.h +51 -0
  909. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +55 -0
  910. data/third_party/upb/upb/reflection/method_def.c +124 -0
  911. data/third_party/upb/upb/reflection/method_def.h +59 -0
  912. data/third_party/upb/upb/reflection/method_def_internal.h +53 -0
  913. data/third_party/upb/upb/reflection/oneof_def.c +226 -0
  914. data/third_party/upb/upb/reflection/oneof_def.h +66 -0
  915. data/third_party/upb/upb/reflection/oneof_def_internal.h +57 -0
  916. data/third_party/upb/upb/reflection/service_def.c +128 -0
  917. data/third_party/upb/upb/reflection/service_def.h +60 -0
  918. data/third_party/upb/upb/reflection/service_def_internal.h +53 -0
  919. data/third_party/upb/upb/reflection.h +4 -78
  920. data/third_party/upb/upb/reflection.hpp +3 -7
  921. data/third_party/upb/upb/status.h +4 -34
  922. data/third_party/upb/upb/{collections.h → string_view.h} +7 -7
  923. data/third_party/upb/upb/{text_encode.c → text/encode.c} +74 -70
  924. data/third_party/upb/upb/text/encode.h +69 -0
  925. data/third_party/upb/upb/text_encode.h +4 -32
  926. data/third_party/upb/upb/upb.h +6 -151
  927. data/third_party/upb/upb/upb.hpp +10 -18
  928. data/third_party/upb/upb/wire/common.h +44 -0
  929. data/third_party/upb/upb/wire/common_internal.h +50 -0
  930. data/third_party/upb/upb/wire/decode.c +1343 -0
  931. data/third_party/upb/upb/wire/decode.h +108 -0
  932. data/third_party/upb/upb/{decode_fast.c → wire/decode_fast.c} +184 -225
  933. data/third_party/upb/upb/{decode_fast.h → wire/decode_fast.h} +21 -7
  934. data/third_party/upb/upb/{internal/decode.h → wire/decode_internal.h} +44 -92
  935. data/third_party/upb/upb/{encode.c → wire/encode.c} +114 -95
  936. data/third_party/upb/upb/wire/encode.h +92 -0
  937. data/third_party/upb/upb/wire/eps_copy_input_stream.c +39 -0
  938. data/third_party/upb/upb/wire/eps_copy_input_stream.h +425 -0
  939. data/third_party/upb/upb/wire/reader.c +67 -0
  940. data/third_party/upb/upb/wire/reader.h +227 -0
  941. data/third_party/upb/upb/wire/swap_internal.h +63 -0
  942. data/third_party/upb/upb/wire/types.h +41 -0
  943. data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-neon.c +1 -1
  944. data/third_party/{upb/third_party/utf8_range → utf8_range}/utf8_range.h +12 -0
  945. metadata +155 -40
  946. data/src/core/ext/transport/chttp2/transport/context_list.cc +0 -71
  947. data/src/core/ext/transport/chttp2/transport/context_list.h +0 -54
  948. data/third_party/upb/upb/arena.c +0 -277
  949. data/third_party/upb/upb/decode.c +0 -1221
  950. data/third_party/upb/upb/def.c +0 -3269
  951. data/third_party/upb/upb/internal/table.h +0 -385
  952. data/third_party/upb/upb/msg.c +0 -368
  953. data/third_party/upb/upb/msg_internal.h +0 -837
  954. data/third_party/upb/upb/reflection.c +0 -323
  955. /data/third_party/{upb/third_party/utf8_range → utf8_range}/naive.c +0 -0
  956. /data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-sse.c +0 -0
@@ -0,0 +1,161 @@
1
+ /*
2
+ * Copyright (c) 2009-2021, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #ifndef UPB_HASH_STR_TABLE_H_
29
+ #define UPB_HASH_STR_TABLE_H_
30
+
31
+ #include "upb/hash/common.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ typedef struct {
37
+ upb_table t;
38
+ } upb_strtable;
39
+
40
+ #ifdef __cplusplus
41
+ extern "C" {
42
+ #endif
43
+
44
+ // Initialize a table. If memory allocation failed, false is returned and
45
+ // the table is uninitialized.
46
+ bool upb_strtable_init(upb_strtable* table, size_t expected_size, upb_Arena* a);
47
+
48
+ // Returns the number of values in the table.
49
+ UPB_INLINE size_t upb_strtable_count(const upb_strtable* t) {
50
+ return t->t.count;
51
+ }
52
+
53
+ void upb_strtable_clear(upb_strtable* t);
54
+
55
+ // Inserts the given key into the hashtable with the given value.
56
+ // The key must not already exist in the hash table. The key is not required
57
+ // to be NULL-terminated, and the table will make an internal copy of the key.
58
+ //
59
+ // If a table resize was required but memory allocation failed, false is
60
+ // returned and the table is unchanged. */
61
+ bool upb_strtable_insert(upb_strtable* t, const char* key, size_t len,
62
+ upb_value val, upb_Arena* a);
63
+
64
+ // Looks up key in this table, returning "true" if the key was found.
65
+ // If v is non-NULL, copies the value for this key into *v.
66
+ bool upb_strtable_lookup2(const upb_strtable* t, const char* key, size_t len,
67
+ upb_value* v);
68
+
69
+ // For NULL-terminated strings.
70
+ UPB_INLINE bool upb_strtable_lookup(const upb_strtable* t, const char* key,
71
+ upb_value* v) {
72
+ return upb_strtable_lookup2(t, key, strlen(key), v);
73
+ }
74
+
75
+ // Removes an item from the table. Returns true if the remove was successful,
76
+ // and stores the removed item in *val if non-NULL.
77
+ bool upb_strtable_remove2(upb_strtable* t, const char* key, size_t len,
78
+ upb_value* val);
79
+
80
+ UPB_INLINE bool upb_strtable_remove(upb_strtable* t, const char* key,
81
+ upb_value* v) {
82
+ return upb_strtable_remove2(t, key, strlen(key), v);
83
+ }
84
+
85
+ // Exposed for testing only.
86
+ bool upb_strtable_resize(upb_strtable* t, size_t size_lg2, upb_Arena* a);
87
+
88
+ /* Iteration over strtable:
89
+ *
90
+ * intptr_t iter = UPB_STRTABLE_BEGIN;
91
+ * upb_StringView key;
92
+ * upb_value val;
93
+ * while (upb_strtable_next2(t, &key, &val, &iter)) {
94
+ * // ...
95
+ * }
96
+ */
97
+
98
+ #define UPB_STRTABLE_BEGIN -1
99
+
100
+ bool upb_strtable_next2(const upb_strtable* t, upb_StringView* key,
101
+ upb_value* val, intptr_t* iter);
102
+ void upb_strtable_removeiter(upb_strtable* t, intptr_t* iter);
103
+
104
+ /* DEPRECATED iterators, slated for removal.
105
+ *
106
+ * Iterators for string tables. We are subject to some kind of unusual
107
+ * design constraints:
108
+ *
109
+ * For high-level languages:
110
+ * - we must be able to guarantee that we don't crash or corrupt memory even if
111
+ * the program accesses an invalidated iterator.
112
+ *
113
+ * For C++11 range-based for:
114
+ * - iterators must be copyable
115
+ * - iterators must be comparable
116
+ * - it must be possible to construct an "end" value.
117
+ *
118
+ * Iteration order is undefined.
119
+ *
120
+ * Modifying the table invalidates iterators. upb_{str,int}table_done() is
121
+ * guaranteed to work even on an invalidated iterator, as long as the table it
122
+ * is iterating over has not been freed. Calling next() or accessing data from
123
+ * an invalidated iterator yields unspecified elements from the table, but it is
124
+ * guaranteed not to crash and to return real table elements (except when done()
125
+ * is true). */
126
+ /* upb_strtable_iter **********************************************************/
127
+
128
+ /* upb_strtable_iter i;
129
+ * upb_strtable_begin(&i, t);
130
+ * for(; !upb_strtable_done(&i); upb_strtable_next(&i)) {
131
+ * const char *key = upb_strtable_iter_key(&i);
132
+ * const upb_value val = upb_strtable_iter_value(&i);
133
+ * // ...
134
+ * }
135
+ */
136
+
137
+ typedef struct {
138
+ const upb_strtable* t;
139
+ size_t index;
140
+ } upb_strtable_iter;
141
+
142
+ UPB_INLINE const upb_tabent* str_tabent(const upb_strtable_iter* i) {
143
+ return &i->t->t.entries[i->index];
144
+ }
145
+
146
+ void upb_strtable_begin(upb_strtable_iter* i, const upb_strtable* t);
147
+ void upb_strtable_next(upb_strtable_iter* i);
148
+ bool upb_strtable_done(const upb_strtable_iter* i);
149
+ upb_StringView upb_strtable_iter_key(const upb_strtable_iter* i);
150
+ upb_value upb_strtable_iter_value(const upb_strtable_iter* i);
151
+ void upb_strtable_iter_setdone(upb_strtable_iter* i);
152
+ bool upb_strtable_iter_isequal(const upb_strtable_iter* i1,
153
+ const upb_strtable_iter* i2);
154
+
155
+ #ifdef __cplusplus
156
+ } /* extern "C" */
157
+ #endif
158
+
159
+ #include "upb/port/undef.inc"
160
+
161
+ #endif /* UPB_HASH_STR_TABLE_H_ */
@@ -25,22 +25,24 @@
25
25
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
26
  */
27
27
 
28
- #include "upb/json_decode.h"
28
+ #include "upb/json/decode.h"
29
29
 
30
30
  #include <errno.h>
31
31
  #include <float.h>
32
32
  #include <inttypes.h>
33
33
  #include <limits.h>
34
34
  #include <math.h>
35
- #include <setjmp.h>
36
35
  #include <stdlib.h>
37
36
  #include <string.h>
38
37
 
39
- #include "upb/encode.h"
40
- #include "upb/reflection.h"
38
+ #include "upb/collections/map.h"
39
+ #include "upb/lex/atoi.h"
40
+ #include "upb/lex/unicode.h"
41
+ #include "upb/reflection/message.h"
42
+ #include "upb/wire/encode.h"
41
43
 
42
- /* Special header, must be included last. */
43
- #include "upb/port_def.inc"
44
+ // Must be last.
45
+ #include "upb/port/def.inc"
44
46
 
45
47
  typedef struct {
46
48
  const char *ptr, *end;
@@ -377,44 +379,20 @@ static uint32_t jsondec_codepoint(jsondec* d) {
377
379
  /* Parses a \uXXXX unicode escape (possibly a surrogate pair). */
378
380
  static size_t jsondec_unicode(jsondec* d, char* out) {
379
381
  uint32_t cp = jsondec_codepoint(d);
380
- if (cp >= 0xd800 && cp <= 0xdbff) {
382
+ if (upb_Unicode_IsHigh(cp)) {
381
383
  /* Surrogate pair: two 16-bit codepoints become a 32-bit codepoint. */
382
- uint32_t high = cp;
383
- uint32_t low;
384
384
  jsondec_parselit(d, "\\u");
385
- low = jsondec_codepoint(d);
386
- if (low < 0xdc00 || low > 0xdfff) {
387
- jsondec_err(d, "Invalid low surrogate");
388
- }
389
- cp = (high & 0x3ff) << 10;
390
- cp |= (low & 0x3ff);
391
- cp += 0x10000;
392
- } else if (cp >= 0xdc00 && cp <= 0xdfff) {
385
+ uint32_t low = jsondec_codepoint(d);
386
+ if (!upb_Unicode_IsLow(low)) jsondec_err(d, "Invalid low surrogate");
387
+ cp = upb_Unicode_FromPair(cp, low);
388
+ } else if (upb_Unicode_IsLow(cp)) {
393
389
  jsondec_err(d, "Unpaired low surrogate");
394
390
  }
395
391
 
396
392
  /* Write to UTF-8 */
397
- if (cp <= 0x7f) {
398
- out[0] = cp;
399
- return 1;
400
- } else if (cp <= 0x07FF) {
401
- out[0] = ((cp >> 6) & 0x1F) | 0xC0;
402
- out[1] = ((cp >> 0) & 0x3F) | 0x80;
403
- return 2;
404
- } else if (cp <= 0xFFFF) {
405
- out[0] = ((cp >> 12) & 0x0F) | 0xE0;
406
- out[1] = ((cp >> 6) & 0x3F) | 0x80;
407
- out[2] = ((cp >> 0) & 0x3F) | 0x80;
408
- return 3;
409
- } else if (cp < 0x10FFFF) {
410
- out[0] = ((cp >> 18) & 0x07) | 0xF0;
411
- out[1] = ((cp >> 12) & 0x3f) | 0x80;
412
- out[2] = ((cp >> 6) & 0x3f) | 0x80;
413
- out[3] = ((cp >> 0) & 0x3f) | 0x80;
414
- return 4;
415
- } else {
416
- jsondec_err(d, "Invalid codepoint");
417
- }
393
+ int bytes = upb_Unicode_ToUTF8(cp, out);
394
+ if (bytes == 0) jsondec_err(d, "Invalid codepoint");
395
+ return bytes;
418
396
  }
419
397
 
420
398
  static void jsondec_resize(jsondec* d, char** buf, char** end, char** buf_end) {
@@ -460,7 +438,7 @@ static upb_StringView jsondec_string(jsondec* d) {
460
438
  if (*d->ptr == 'u') {
461
439
  d->ptr++;
462
440
  if (buf_end - end < 4) {
463
- /* Allow space for maximum-sized code point (4 bytes). */
441
+ /* Allow space for maximum-sized codepoint (4 bytes). */
464
442
  jsondec_resize(d, &buf, &end, &buf_end);
465
443
  }
466
444
  end += jsondec_unicode(d, end);
@@ -633,44 +611,19 @@ static size_t jsondec_base64(jsondec* d, upb_StringView str) {
633
611
 
634
612
  /* Low-level integer parsing **************************************************/
635
613
 
636
- /* We use these hand-written routines instead of strto[u]l() because the "long
637
- * long" variants aren't in c89. Also our version allows setting a ptr limit. */
638
-
639
614
  static const char* jsondec_buftouint64(jsondec* d, const char* ptr,
640
615
  const char* end, uint64_t* val) {
641
- uint64_t u64 = 0;
642
- while (ptr < end) {
643
- unsigned ch = *ptr - '0';
644
- if (ch >= 10) break;
645
- if (u64 > UINT64_MAX / 10 || u64 * 10 > UINT64_MAX - ch) {
646
- jsondec_err(d, "Integer overflow");
647
- }
648
- u64 *= 10;
649
- u64 += ch;
650
- ptr++;
651
- }
652
-
653
- *val = u64;
654
- return ptr;
616
+ const char* out = upb_BufToUint64(ptr, end, val);
617
+ if (!out) jsondec_err(d, "Integer overflow");
618
+ return out;
655
619
  }
656
620
 
657
621
  static const char* jsondec_buftoint64(jsondec* d, const char* ptr,
658
- const char* end, int64_t* val) {
659
- bool neg = false;
660
- uint64_t u64;
661
-
662
- if (ptr != end && *ptr == '-') {
663
- ptr++;
664
- neg = true;
665
- }
666
-
667
- ptr = jsondec_buftouint64(d, ptr, end, &u64);
668
- if (u64 > (uint64_t)INT64_MAX + neg) {
669
- jsondec_err(d, "Integer overflow");
670
- }
671
-
672
- *val = neg ? -u64 : u64;
673
- return ptr;
622
+ const char* end, int64_t* val,
623
+ bool* is_neg) {
624
+ const char* out = upb_BufToInt64(ptr, end, val, is_neg);
625
+ if (!out) jsondec_err(d, "Integer overflow");
626
+ return out;
674
627
  }
675
628
 
676
629
  static uint64_t jsondec_strtouint64(jsondec* d, upb_StringView str) {
@@ -685,7 +638,7 @@ static uint64_t jsondec_strtouint64(jsondec* d, upb_StringView str) {
685
638
  static int64_t jsondec_strtoint64(jsondec* d, upb_StringView str) {
686
639
  const char* end = str.data + str.size;
687
640
  int64_t ret;
688
- if (jsondec_buftoint64(d, str.data, end, &ret) != end) {
641
+ if (jsondec_buftoint64(d, str.data, end, &ret, NULL) != end) {
689
642
  jsondec_err(d, "Non-number characters in quoted integer");
690
643
  }
691
644
  return ret;
@@ -792,11 +745,11 @@ static upb_MessageValue jsondec_double(jsondec* d, const upb_FieldDef* f) {
792
745
  }
793
746
 
794
747
  if (upb_FieldDef_CType(f) == kUpb_CType_Float) {
795
- if (val.double_val != INFINITY && val.double_val != -INFINITY &&
796
- (val.double_val > FLT_MAX || val.double_val < -FLT_MAX)) {
797
- jsondec_err(d, "Float out of range");
748
+ float f = val.double_val;
749
+ if (val.double_val != INFINITY && val.double_val != -INFINITY) {
750
+ if (f == INFINITY || f == -INFINITY) jsondec_err(d, "Float out of range");
798
751
  }
799
- val.float_val = val.double_val;
752
+ val.float_val = f;
800
753
  }
801
754
 
802
755
  return val;
@@ -919,7 +872,8 @@ static void jsondec_tomsg(jsondec* d, upb_Message* msg,
919
872
 
920
873
  static upb_MessageValue jsondec_msg(jsondec* d, const upb_FieldDef* f) {
921
874
  const upb_MessageDef* m = upb_FieldDef_MessageSubDef(f);
922
- upb_Message* msg = upb_Message_New(m, d->arena);
875
+ const upb_MiniTable* layout = upb_MessageDef_MiniTable(m);
876
+ upb_Message* msg = upb_Message_New(layout, d->arena);
923
877
  upb_MessageValue val;
924
878
 
925
879
  jsondec_tomsg(d, msg, m);
@@ -984,7 +938,7 @@ static void jsondec_field(jsondec* d, upb_Message* msg,
984
938
  jsondec_tomsg(d, submsg, subm);
985
939
  } else {
986
940
  upb_MessageValue val = jsondec_value(d, f);
987
- upb_Message_Set(msg, f, val, d->arena);
941
+ upb_Message_SetFieldByDef(msg, f, val, d->arena);
988
942
  }
989
943
 
990
944
  d->debug_field = preserved;
@@ -1137,9 +1091,10 @@ static void jsondec_timestamp(jsondec* d, upb_Message* msg,
1137
1091
  jsondec_err(d, "Timestamp out of range");
1138
1092
  }
1139
1093
 
1140
- upb_Message_Set(msg, upb_MessageDef_FindFieldByNumber(m, 1), seconds,
1141
- d->arena);
1142
- upb_Message_Set(msg, upb_MessageDef_FindFieldByNumber(m, 2), nanos, d->arena);
1094
+ upb_Message_SetFieldByDef(msg, upb_MessageDef_FindFieldByNumber(m, 1),
1095
+ seconds, d->arena);
1096
+ upb_Message_SetFieldByDef(msg, upb_MessageDef_FindFieldByNumber(m, 2), nanos,
1097
+ d->arena);
1143
1098
  return;
1144
1099
 
1145
1100
  malformed:
@@ -1154,9 +1109,10 @@ static void jsondec_duration(jsondec* d, upb_Message* msg,
1154
1109
  const char* ptr = str.data;
1155
1110
  const char* end = ptr + str.size;
1156
1111
  const int64_t max = (uint64_t)3652500 * 86400;
1112
+ bool neg = false;
1157
1113
 
1158
1114
  /* "3.000000001s", "3s", etc. */
1159
- ptr = jsondec_buftoint64(d, ptr, end, &seconds.int64_val);
1115
+ ptr = jsondec_buftoint64(d, ptr, end, &seconds.int64_val, &neg);
1160
1116
  nanos.int32_val = jsondec_nanos(d, &ptr, end);
1161
1117
 
1162
1118
  if (end - ptr != 1 || *ptr != 's') {
@@ -1167,24 +1123,26 @@ static void jsondec_duration(jsondec* d, upb_Message* msg,
1167
1123
  jsondec_err(d, "Duration out of range");
1168
1124
  }
1169
1125
 
1170
- if (seconds.int64_val < 0) {
1126
+ if (neg) {
1171
1127
  nanos.int32_val = -nanos.int32_val;
1172
1128
  }
1173
1129
 
1174
- upb_Message_Set(msg, upb_MessageDef_FindFieldByNumber(m, 1), seconds,
1175
- d->arena);
1176
- upb_Message_Set(msg, upb_MessageDef_FindFieldByNumber(m, 2), nanos, d->arena);
1130
+ upb_Message_SetFieldByDef(msg, upb_MessageDef_FindFieldByNumber(m, 1),
1131
+ seconds, d->arena);
1132
+ upb_Message_SetFieldByDef(msg, upb_MessageDef_FindFieldByNumber(m, 2), nanos,
1133
+ d->arena);
1177
1134
  }
1178
1135
 
1179
1136
  static void jsondec_listvalue(jsondec* d, upb_Message* msg,
1180
1137
  const upb_MessageDef* m) {
1181
1138
  const upb_FieldDef* values_f = upb_MessageDef_FindFieldByNumber(m, 1);
1182
1139
  const upb_MessageDef* value_m = upb_FieldDef_MessageSubDef(values_f);
1140
+ const upb_MiniTable* value_layout = upb_MessageDef_MiniTable(value_m);
1183
1141
  upb_Array* values = upb_Message_Mutable(msg, values_f, d->arena).array;
1184
1142
 
1185
1143
  jsondec_arrstart(d);
1186
1144
  while (jsondec_arrnext(d)) {
1187
- upb_Message* value_msg = upb_Message_New(value_m, d->arena);
1145
+ upb_Message* value_msg = upb_Message_New(value_layout, d->arena);
1188
1146
  upb_MessageValue value;
1189
1147
  value.msg_val = value_msg;
1190
1148
  upb_Array_Append(values, value, d->arena);
@@ -1199,12 +1157,13 @@ static void jsondec_struct(jsondec* d, upb_Message* msg,
1199
1157
  const upb_MessageDef* entry_m = upb_FieldDef_MessageSubDef(fields_f);
1200
1158
  const upb_FieldDef* value_f = upb_MessageDef_FindFieldByNumber(entry_m, 2);
1201
1159
  const upb_MessageDef* value_m = upb_FieldDef_MessageSubDef(value_f);
1160
+ const upb_MiniTable* value_layout = upb_MessageDef_MiniTable(value_m);
1202
1161
  upb_Map* fields = upb_Message_Mutable(msg, fields_f, d->arena).map;
1203
1162
 
1204
1163
  jsondec_objstart(d);
1205
1164
  while (jsondec_objnext(d)) {
1206
1165
  upb_MessageValue key, value;
1207
- upb_Message* value_msg = upb_Message_New(value_m, d->arena);
1166
+ upb_Message* value_msg = upb_Message_New(value_layout, d->arena);
1208
1167
  key.str_val = jsondec_string(d);
1209
1168
  value.msg_val = value_msg;
1210
1169
  upb_Map_Set(fields, key, value, d->arena);
@@ -1266,7 +1225,7 @@ static void jsondec_wellknownvalue(jsondec* d, upb_Message* msg,
1266
1225
  UPB_UNREACHABLE();
1267
1226
  }
1268
1227
 
1269
- upb_Message_Set(msg, f, val, d->arena);
1228
+ upb_Message_SetFieldByDef(msg, f, val, d->arena);
1270
1229
  }
1271
1230
 
1272
1231
  static upb_StringView jsondec_mask(jsondec* d, const char* buf,
@@ -1353,7 +1312,7 @@ static const upb_MessageDef* jsondec_typeurl(jsondec* d, upb_Message* msg,
1353
1312
  upb_MessageValue val;
1354
1313
 
1355
1314
  val.str_val = type_url;
1356
- upb_Message_Set(msg, type_url_f, val, d->arena);
1315
+ upb_Message_SetFieldByDef(msg, type_url_f, val, d->arena);
1357
1316
 
1358
1317
  /* Find message name after the last '/' */
1359
1318
  while (ptr > type_url.data && *--ptr != '/') {
@@ -1406,7 +1365,8 @@ static void jsondec_any(jsondec* d, upb_Message* msg, const upb_MessageDef* m) {
1406
1365
  jsondec_err(d, "Any object didn't contain a '@type' field");
1407
1366
  }
1408
1367
 
1409
- any_msg = upb_Message_New(any_m, d->arena);
1368
+ const upb_MiniTable* any_layout = upb_MessageDef_MiniTable(any_m);
1369
+ any_msg = upb_Message_New(any_layout, d->arena);
1410
1370
 
1411
1371
  if (pre_type_data) {
1412
1372
  size_t len = pre_type_end - pre_type_data + 1;
@@ -1436,14 +1396,14 @@ static void jsondec_any(jsondec* d, upb_Message* msg, const upb_MessageDef* m) {
1436
1396
  (char**)&encoded.str_val.data, &encoded.str_val.size);
1437
1397
  // TODO(b/235839510): We should fail gracefully here on a bad return status.
1438
1398
  UPB_ASSERT(status == kUpb_EncodeStatus_Ok);
1439
- upb_Message_Set(msg, value_f, encoded, d->arena);
1399
+ upb_Message_SetFieldByDef(msg, value_f, encoded, d->arena);
1440
1400
  }
1441
1401
 
1442
1402
  static void jsondec_wrapper(jsondec* d, upb_Message* msg,
1443
1403
  const upb_MessageDef* m) {
1444
1404
  const upb_FieldDef* value_f = upb_MessageDef_FindFieldByNumber(m, 1);
1445
1405
  upb_MessageValue val = jsondec_value(d, value_f);
1446
- upb_Message_Set(msg, value_f, val, d->arena);
1406
+ upb_Message_SetFieldByDef(msg, value_f, val, d->arena);
1447
1407
  }
1448
1408
 
1449
1409
  static void jsondec_wellknown(jsondec* d, upb_Message* msg,
@@ -1486,6 +1446,14 @@ static void jsondec_wellknown(jsondec* d, upb_Message* msg,
1486
1446
  }
1487
1447
  }
1488
1448
 
1449
+ static bool upb_JsonDecoder_Decode(jsondec* const d, upb_Message* const msg,
1450
+ const upb_MessageDef* const m) {
1451
+ if (UPB_SETJMP(d->err)) return false;
1452
+
1453
+ jsondec_tomsg(d, msg, m);
1454
+ return true;
1455
+ }
1456
+
1489
1457
  bool upb_JsonDecode(const char* buf, size_t size, upb_Message* msg,
1490
1458
  const upb_MessageDef* m, const upb_DefPool* symtab,
1491
1459
  int options, upb_Arena* arena, upb_Status* status) {
@@ -1505,8 +1473,5 @@ bool upb_JsonDecode(const char* buf, size_t size, upb_Message* msg,
1505
1473
  d.debug_field = NULL;
1506
1474
  d.is_first = false;
1507
1475
 
1508
- if (UPB_SETJMP(d.err)) return false;
1509
-
1510
- jsondec_tomsg(&d, msg, m);
1511
- return true;
1476
+ return upb_JsonDecoder_Decode(&d, msg, m);
1512
1477
  }
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Copyright (c) 2009-2021, Google LLC
3
+ * All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ * * Redistributions of source code must retain the above copyright
8
+ * notice, this list of conditions and the following disclaimer.
9
+ * * Redistributions in binary form must reproduce the above copyright
10
+ * notice, this list of conditions and the following disclaimer in the
11
+ * documentation and/or other materials provided with the distribution.
12
+ * * Neither the name of Google LLC nor the
13
+ * names of its contributors may be used to endorse or promote products
14
+ * derived from this software without specific prior written permission.
15
+ *
16
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
+ * ARE DISCLAIMED. IN NO EVENT SHALL Google LLC BE LIABLE FOR ANY DIRECT,
20
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ */
27
+
28
+ #ifndef UPB_JSON_DECODE_H_
29
+ #define UPB_JSON_DECODE_H_
30
+
31
+ #include "upb/reflection/def.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ #ifdef __cplusplus
37
+ extern "C" {
38
+ #endif
39
+
40
+ enum { upb_JsonDecode_IgnoreUnknown = 1 };
41
+
42
+ bool upb_JsonDecode(const char* buf, size_t size, upb_Message* msg,
43
+ const upb_MessageDef* m, const upb_DefPool* symtab,
44
+ int options, upb_Arena* arena, upb_Status* status);
45
+
46
+ #ifdef __cplusplus
47
+ } /* extern "C" */
48
+ #endif
49
+
50
+ #include "upb/port/undef.inc"
51
+
52
+ #endif /* UPB_JSONDECODE_H_ */