grpc 1.54.2 → 1.56.0.pre3

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

Potentially problematic release.


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

Files changed (1230) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +152 -91
  3. data/include/grpc/event_engine/event_engine.h +4 -3
  4. data/include/grpc/grpc_audit_logging.h +96 -0
  5. data/include/grpc/impl/grpc_types.h +2 -0
  6. data/include/grpc/module.modulemap +2 -0
  7. data/include/grpc/support/json.h +218 -0
  8. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +6 -1
  9. data/src/core/ext/filters/client_channel/backend_metric.cc +4 -1
  10. data/src/core/ext/filters/client_channel/channel_connectivity.cc +4 -4
  11. data/src/core/ext/filters/client_channel/client_channel.cc +98 -120
  12. data/src/core/ext/filters/client_channel/client_channel.h +26 -16
  13. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +20 -19
  14. data/src/core/ext/filters/client_channel/client_channel_internal.h +22 -59
  15. data/src/core/ext/filters/client_channel/client_channel_service_config.cc +2 -2
  16. data/src/core/ext/filters/client_channel/config_selector.h +9 -36
  17. data/src/core/ext/filters/client_channel/http_proxy.cc +34 -1
  18. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +3 -0
  19. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +7 -6
  20. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +1 -1
  21. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  22. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.cc +455 -0
  23. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.h +54 -0
  24. data/src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h +186 -0
  25. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +2 -7
  26. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +56 -24
  27. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +23 -2
  28. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +19 -6
  29. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +3 -11
  30. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +16 -7
  31. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +18 -1
  32. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +52 -50
  33. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +6 -4
  34. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +36 -13
  35. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc +76 -6
  36. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +33 -41
  37. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +6 -12
  38. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +54 -49
  39. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +4 -12
  40. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -18
  41. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +48 -51
  42. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +10 -15
  43. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +16 -22
  44. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +19 -118
  45. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h +30 -0
  46. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +35 -33
  47. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +60 -0
  48. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h +27 -0
  49. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +549 -0
  50. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h +35 -0
  51. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc +97 -0
  52. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h +32 -0
  53. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +2 -13
  54. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h +24 -0
  55. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +30 -28
  56. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +156 -66
  57. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +16 -1
  58. data/src/core/ext/filters/client_channel/retry_filter.cc +23 -55
  59. data/src/core/ext/filters/client_channel/retry_service_config.cc +9 -8
  60. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +10 -40
  61. data/src/core/ext/filters/client_channel/subchannel.cc +10 -196
  62. data/src/core/ext/filters/client_channel/subchannel.h +3 -43
  63. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +1 -1
  64. data/src/core/ext/filters/http/message_compress/compression_filter.cc +7 -7
  65. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +168 -75
  66. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +6 -8
  67. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +3 -3
  68. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +16 -1
  69. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +78 -23
  70. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +21 -0
  71. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +70 -0
  72. data/src/core/ext/transport/chttp2/transport/flow_control.cc +46 -95
  73. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -7
  74. data/src/core/ext/transport/chttp2/transport/frame_ping.h +0 -3
  75. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +1 -0
  76. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -0
  77. data/src/core/ext/transport/chttp2/transport/internal.h +4 -19
  78. data/src/core/ext/transport/chttp2/transport/writing.cc +14 -3
  79. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +87 -52
  80. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +414 -181
  81. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -60
  82. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +481 -224
  83. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +90 -55
  84. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +415 -188
  85. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +357 -210
  86. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1572 -729
  87. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +30 -17
  88. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +144 -47
  89. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +34 -21
  90. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -62
  91. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +27 -14
  92. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +78 -38
  93. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +20 -11
  94. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +48 -26
  95. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +20 -11
  96. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +48 -26
  97. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +109 -62
  98. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +566 -244
  99. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +21 -12
  100. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +45 -30
  101. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +22 -19
  102. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +82 -29
  103. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +23 -16
  104. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +45 -30
  105. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +230 -143
  106. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +733 -404
  107. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +417 -264
  108. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1839 -899
  109. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -41
  110. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +286 -148
  111. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +531 -334
  112. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2017 -1131
  113. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -12
  114. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +45 -30
  115. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +89 -52
  116. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +347 -232
  117. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +264 -165
  118. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +888 -476
  119. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +139 -80
  120. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +527 -274
  121. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -13
  122. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +50 -36
  123. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +380 -221
  124. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1168 -611
  125. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +166 -94
  126. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +666 -292
  127. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +18 -11
  128. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +37 -26
  129. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +21 -12
  130. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +45 -30
  131. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +30 -17
  132. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +144 -47
  133. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +274 -167
  134. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +789 -440
  135. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +228 -137
  136. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +1100 -501
  137. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -13
  138. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +60 -37
  139. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +350 -211
  140. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1072 -646
  141. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +33 -18
  142. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +117 -51
  143. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +34 -19
  144. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +118 -56
  145. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +38 -21
  146. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +148 -64
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +31 -18
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +143 -65
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +22 -13
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +51 -37
  151. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +78 -43
  152. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +265 -127
  153. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +145 -88
  154. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +438 -241
  155. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +115 -62
  156. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +559 -227
  157. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +18 -11
  158. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +35 -26
  159. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +175 -118
  160. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +857 -442
  161. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +172 -95
  162. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +864 -374
  163. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -27
  164. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +159 -110
  165. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +39 -18
  166. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +74 -56
  167. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +28 -15
  168. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +71 -45
  169. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +131 -74
  170. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +489 -249
  171. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +135 -80
  172. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +505 -245
  173. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +248 -139
  174. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +933 -433
  175. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +80 -49
  176. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +616 -201
  177. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +1283 -776
  178. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +5422 -2519
  179. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +49 -28
  180. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +164 -84
  181. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +228 -141
  182. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +738 -399
  183. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +20 -11
  184. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +48 -26
  185. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +21 -12
  186. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +45 -30
  187. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +32 -19
  188. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +70 -49
  189. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +27 -14
  190. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +110 -43
  191. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +46 -25
  192. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +259 -100
  193. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +21 -12
  194. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +45 -30
  195. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +18 -11
  196. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +35 -26
  197. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +42 -23
  198. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +108 -70
  199. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +7 -4
  200. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +21 -16
  201. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +43 -24
  202. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +110 -75
  203. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +30 -17
  204. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +95 -50
  205. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +16 -9
  206. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -23
  207. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +60 -37
  208. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +150 -108
  209. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +74 -43
  210. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +357 -167
  211. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +44 -25
  212. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +114 -80
  213. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +41 -20
  214. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +245 -82
  215. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +32 -19
  216. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +73 -51
  217. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +474 -296
  218. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2121 -1076
  219. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +18 -11
  220. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +35 -26
  221. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +34 -21
  222. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +112 -78
  223. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +72 -45
  224. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +193 -138
  225. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +34 -21
  226. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +119 -78
  227. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +18 -11
  228. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +35 -26
  229. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +7 -4
  230. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +15 -10
  231. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +184 -96
  232. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +907 -360
  233. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +56 -33
  234. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -101
  235. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +188 -111
  236. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +816 -419
  237. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +32 -19
  238. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +109 -53
  239. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +10 -7
  240. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +18 -14
  241. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +300 -177
  242. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +1284 -522
  243. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +42 -23
  244. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +188 -75
  245. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +130 -83
  246. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +510 -238
  247. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +22 -13
  248. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +55 -34
  249. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +39 -26
  250. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +124 -68
  251. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +21 -12
  252. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +47 -30
  253. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +52 -29
  254. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +92 -62
  255. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +37 -20
  256. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +133 -63
  257. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +22 -13
  258. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +91 -40
  259. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -12
  260. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +50 -32
  261. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +18 -11
  262. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +37 -26
  263. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +46 -27
  264. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +101 -70
  265. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +13 -10
  266. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +25 -22
  267. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +40 -23
  268. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +161 -75
  269. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +31 -18
  270. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +114 -56
  271. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +46 -29
  272. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +139 -91
  273. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +65 -42
  274. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +200 -121
  275. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +80 -45
  276. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +208 -131
  277. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +34 -21
  278. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +74 -53
  279. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +7 -4
  280. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +13 -8
  281. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +16 -9
  282. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +28 -18
  283. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +28 -15
  284. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +55 -34
  285. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +43 -22
  286. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +91 -53
  287. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +35 -20
  288. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +92 -57
  289. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +7 -4
  290. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +13 -8
  291. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -11
  292. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +48 -26
  293. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +23 -14
  294. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +61 -41
  295. data/src/core/ext/upb-generated/google/api/annotations.upb.c +14 -11
  296. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -20
  297. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +255 -154
  298. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +934 -450
  299. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +299 -180
  300. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +946 -483
  301. data/src/core/ext/upb-generated/google/api/http.upb.c +68 -35
  302. data/src/core/ext/upb-generated/google/api/http.upb.h +284 -120
  303. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +22 -13
  304. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +95 -37
  305. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -10
  306. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +38 -22
  307. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +1018 -424
  308. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +3851 -1412
  309. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -10
  310. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +38 -22
  311. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +10 -7
  312. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +18 -14
  313. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +62 -39
  314. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +207 -102
  315. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -10
  316. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +38 -22
  317. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +90 -51
  318. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +157 -107
  319. data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -13
  320. data/src/core/ext/upb-generated/google/rpc/status.upb.h +95 -37
  321. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +59 -34
  322. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +154 -92
  323. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +43 -24
  324. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +118 -60
  325. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +250 -145
  326. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +919 -415
  327. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +34 -19
  328. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +76 -51
  329. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +25 -14
  330. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +45 -30
  331. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +144 -81
  332. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +405 -217
  333. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +51 -26
  334. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +153 -61
  335. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +173 -102
  336. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +855 -298
  337. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +68 -49
  338. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +155 -104
  339. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +26 -17
  340. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +55 -34
  341. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +12 -9
  342. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +31 -14
  343. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +26 -17
  344. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +55 -34
  345. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +23 -16
  346. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +45 -30
  347. data/src/core/ext/upb-generated/validate/validate.upb.c +845 -455
  348. data/src/core/ext/upb-generated/validate/validate.upb.h +4347 -1908
  349. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +68 -49
  350. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +155 -104
  351. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +26 -17
  352. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +55 -34
  353. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +12 -9
  354. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +31 -14
  355. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +65 -44
  356. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +137 -91
  357. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +23 -16
  358. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +45 -30
  359. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +16 -9
  360. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +28 -18
  361. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +21 -12
  362. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +45 -30
  363. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +37 -22
  364. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +96 -63
  365. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +26 -17
  366. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +52 -29
  367. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +21 -12
  368. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +45 -30
  369. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +23 -14
  370. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +62 -42
  371. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +44 -25
  372. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +169 -79
  373. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +27 -14
  374. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +65 -38
  375. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +78 -38
  376. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +182 -76
  377. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +21 -12
  378. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +89 -34
  379. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +18 -11
  380. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +35 -26
  381. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +32 -19
  382. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +150 -54
  383. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +10 -7
  384. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +18 -14
  385. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +34 -21
  386. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +161 -63
  387. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +162 -101
  388. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +501 -293
  389. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +85 -52
  390. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +430 -164
  391. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +24 -15
  392. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +53 -37
  393. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +40 -23
  394. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +161 -75
  395. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +37 -22
  396. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +92 -66
  397. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +43 -22
  398. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +91 -53
  399. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +21 -12
  400. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +45 -30
  401. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +1 -1
  402. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +6 -5
  403. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +1 -1
  404. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +6 -5
  405. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +1 -1
  406. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +6 -5
  407. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +1 -1
  408. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +6 -5
  409. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +1 -1
  410. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +6 -5
  411. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +1 -1
  412. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +6 -5
  413. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +1 -1
  414. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +6 -5
  415. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +1 -1
  416. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +6 -5
  417. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +1 -1
  418. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +6 -5
  419. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +1 -1
  420. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +6 -5
  421. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +1 -1
  422. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +6 -5
  423. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +1 -1
  424. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +6 -5
  425. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +1 -1
  426. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +6 -5
  427. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +1 -1
  428. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +6 -5
  429. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +252 -253
  430. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +6 -5
  431. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +1 -1
  432. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +6 -5
  433. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +1 -1
  434. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +6 -5
  435. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +1 -1
  436. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +6 -5
  437. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +1 -1
  438. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +6 -5
  439. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +1 -1
  440. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +6 -5
  441. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +1 -1
  442. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +6 -5
  443. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +1 -1
  444. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +6 -5
  445. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +1 -1
  446. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +6 -5
  447. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +13 -12
  448. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +11 -5
  449. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +1 -1
  450. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +6 -5
  451. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +1 -1
  452. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +6 -5
  453. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +1 -1
  454. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +6 -5
  455. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +1 -1
  456. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +6 -5
  457. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +1 -1
  458. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +6 -5
  459. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +1 -1
  460. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +6 -5
  461. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +44 -44
  462. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +6 -5
  463. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +1 -1
  464. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +6 -5
  465. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +1 -1
  466. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +6 -5
  467. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +1 -1
  468. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +6 -5
  469. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +1 -1
  470. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +6 -5
  471. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +1 -1
  472. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +6 -5
  473. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +1 -1
  474. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +6 -5
  475. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +1 -1
  476. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +6 -5
  477. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +1 -1
  478. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +6 -5
  479. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +1 -1
  480. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +6 -5
  481. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +1 -1
  482. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +6 -5
  483. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +1 -1
  484. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +6 -5
  485. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +1 -1
  486. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +6 -5
  487. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +1 -1
  488. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +6 -5
  489. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +1 -1
  490. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +6 -5
  491. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +1 -1
  492. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +6 -5
  493. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +1 -1
  494. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +6 -5
  495. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +134 -128
  496. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +11 -5
  497. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +1 -1
  498. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +6 -5
  499. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +1 -1
  500. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +6 -5
  501. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +1 -1
  502. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +6 -5
  503. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +1 -1
  504. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +6 -5
  505. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +1 -1
  506. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +6 -5
  507. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +1 -1
  508. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +6 -5
  509. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +1 -1
  510. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +6 -5
  511. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +1 -1
  512. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +6 -5
  513. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +1 -1
  514. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +6 -5
  515. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +1 -1
  516. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +6 -5
  517. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +1 -1
  518. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +6 -5
  519. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +1 -1
  520. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +6 -5
  521. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +1 -1
  522. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +6 -5
  523. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +1 -1
  524. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +6 -5
  525. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +1 -1
  526. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +6 -5
  527. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +1 -1
  528. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +6 -5
  529. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +1 -1
  530. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +6 -5
  531. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +1 -1
  532. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +6 -5
  533. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +1 -1
  534. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +6 -5
  535. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +1 -1
  536. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +6 -5
  537. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +1 -1
  538. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +6 -5
  539. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +379 -376
  540. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +6 -5
  541. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +1 -1
  542. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +6 -5
  543. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +1 -1
  544. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +6 -5
  545. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +138 -136
  546. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +6 -5
  547. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +1 -1
  548. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +6 -5
  549. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +1 -1
  550. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +6 -5
  551. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +1 -1
  552. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +6 -5
  553. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +1 -1
  554. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +6 -5
  555. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +1 -1
  556. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +6 -5
  557. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +1 -1
  558. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +6 -5
  559. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +12 -13
  560. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +6 -5
  561. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +1 -1
  562. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +6 -5
  563. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +1 -1
  564. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +6 -5
  565. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +1 -1
  566. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +6 -5
  567. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  568. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  569. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +1 -1
  570. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +6 -5
  571. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +1 -1
  572. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +6 -5
  573. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +1 -1
  574. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +6 -5
  575. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +1 -1
  576. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +6 -5
  577. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +1 -1
  578. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +6 -5
  579. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +1 -1
  580. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +6 -5
  581. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +1 -1
  582. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +6 -5
  583. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +1 -1
  584. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +6 -5
  585. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +1 -1
  586. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +6 -5
  587. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +1 -1
  588. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +6 -5
  589. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +1 -1
  590. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +6 -5
  591. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +1 -1
  592. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +6 -5
  593. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +1 -1
  594. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +6 -5
  595. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +1 -1
  596. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +6 -5
  597. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +1 -1
  598. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +6 -5
  599. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +1 -1
  600. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +6 -5
  601. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +1 -1
  602. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +6 -5
  603. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +1 -1
  604. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +6 -5
  605. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +1 -1
  606. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +6 -5
  607. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +1 -1
  608. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +6 -5
  609. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +1 -1
  610. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +6 -5
  611. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +1 -1
  612. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +6 -5
  613. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +1 -1
  614. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +6 -5
  615. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +1 -1
  616. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +6 -5
  617. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +1 -1
  618. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +6 -5
  619. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +1 -1
  620. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +6 -5
  621. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +329 -273
  622. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +11 -5
  623. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +1 -1
  624. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +6 -5
  625. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +1 -1
  626. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +6 -5
  627. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +1 -1
  628. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +6 -5
  629. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +1 -1
  630. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +6 -5
  631. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +1 -1
  632. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +6 -5
  633. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +1 -1
  634. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +6 -5
  635. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +1 -1
  636. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +6 -5
  637. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +1 -1
  638. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +6 -5
  639. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +1 -1
  640. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +6 -5
  641. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +1 -1
  642. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +6 -5
  643. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +1 -1
  644. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +6 -5
  645. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +1 -1
  646. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +6 -5
  647. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +1 -1
  648. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +6 -5
  649. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +1 -1
  650. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +6 -5
  651. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +1 -1
  652. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +6 -5
  653. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +1 -1
  654. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +6 -5
  655. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +1 -1
  656. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +6 -5
  657. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +1 -1
  658. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +6 -5
  659. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +1 -1
  660. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +6 -5
  661. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +1 -1
  662. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +6 -5
  663. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +1 -1
  664. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +6 -5
  665. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +1 -1
  666. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +6 -5
  667. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +1 -1
  668. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +6 -5
  669. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +1 -1
  670. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +6 -5
  671. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +1 -1
  672. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +6 -5
  673. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +1 -1
  674. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +6 -5
  675. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +1 -1
  676. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +6 -5
  677. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +1 -1
  678. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +6 -5
  679. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +1 -1
  680. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +6 -5
  681. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +1 -1
  682. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +6 -5
  683. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +1 -1
  684. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +6 -5
  685. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +1 -1
  686. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +6 -5
  687. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +1 -1
  688. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +6 -5
  689. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +1 -1
  690. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +6 -5
  691. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +1 -1
  692. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +6 -5
  693. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +1 -1
  694. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +6 -5
  695. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +1 -1
  696. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +6 -5
  697. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +1 -1
  698. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +6 -5
  699. data/src/core/ext/xds/certificate_provider_store.cc +8 -13
  700. data/src/core/ext/xds/certificate_provider_store.h +1 -1
  701. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +30 -42
  702. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +14 -9
  703. data/src/core/ext/xds/upb_utils.h +1 -1
  704. data/src/core/ext/xds/xds_api.cc +41 -18
  705. data/src/core/ext/xds/xds_api.h +5 -4
  706. data/src/core/ext/xds/xds_audit_logger_registry.cc +122 -0
  707. data/src/core/ext/xds/xds_audit_logger_registry.h +68 -0
  708. data/src/core/ext/xds/xds_bootstrap.cc +3 -3
  709. data/src/core/ext/xds/xds_bootstrap_grpc.cc +35 -23
  710. data/src/core/ext/xds/xds_bootstrap_grpc.h +5 -0
  711. data/src/core/ext/xds/xds_client.cc +29 -7
  712. data/src/core/ext/xds/xds_client.h +1 -1
  713. data/src/core/ext/xds/xds_client_stats.h +1 -1
  714. data/src/core/ext/xds/xds_cluster.cc +44 -51
  715. data/src/core/ext/xds/xds_cluster.h +1 -2
  716. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +15 -11
  717. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +2 -2
  718. data/src/core/ext/xds/xds_common_types.cc +8 -5
  719. data/src/core/ext/xds/xds_endpoint.cc +5 -2
  720. data/src/core/ext/xds/xds_endpoint.h +1 -1
  721. data/src/core/ext/xds/xds_http_fault_filter.cc +18 -15
  722. data/src/core/ext/xds/xds_http_fault_filter.h +3 -2
  723. data/src/core/ext/xds/xds_http_filters.h +7 -4
  724. data/src/core/ext/xds/xds_http_rbac_filter.cc +158 -73
  725. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -2
  726. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +17 -13
  727. data/src/core/ext/xds/xds_http_stateful_session_filter.h +3 -2
  728. data/src/core/ext/xds/xds_lb_policy_registry.cc +24 -36
  729. data/src/core/ext/xds/xds_listener.cc +11 -4
  730. data/src/core/ext/xds/xds_listener.h +1 -1
  731. data/src/core/ext/xds/xds_resource_type.h +2 -2
  732. data/src/core/ext/xds/xds_route_config.cc +48 -8
  733. data/src/core/ext/xds/xds_route_config.h +1 -1
  734. data/src/core/ext/xds/xds_routing.cc +2 -2
  735. data/src/core/ext/xds/xds_transport_grpc.cc +3 -1
  736. data/src/core/lib/avl/avl.h +5 -0
  737. data/src/core/lib/channel/channel_args.cc +80 -22
  738. data/src/core/lib/channel/channel_args.h +34 -1
  739. data/src/core/lib/channel/channel_trace.cc +16 -12
  740. data/src/core/lib/channel/channelz.cc +163 -135
  741. data/src/core/lib/channel/channelz.h +42 -35
  742. data/src/core/lib/channel/channelz_registry.cc +24 -20
  743. data/src/core/lib/channel/connected_channel.cc +99 -33
  744. data/src/core/lib/channel/promise_based_filter.cc +2 -12
  745. data/src/core/lib/channel/promise_based_filter.h +2 -0
  746. data/src/core/lib/compression/compression_internal.cc +2 -5
  747. data/src/core/lib/config/config_vars.cc +20 -18
  748. data/src/core/lib/config/config_vars.h +4 -4
  749. data/src/core/lib/config/load_config.cc +13 -0
  750. data/src/core/lib/config/load_config.h +6 -0
  751. data/src/core/lib/debug/event_log.h +1 -1
  752. data/src/core/lib/debug/stats_data.h +1 -1
  753. data/src/core/lib/debug/trace.cc +34 -56
  754. data/src/core/lib/debug/trace.h +14 -4
  755. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +211 -0
  756. data/src/core/lib/event_engine/cf_engine/cf_engine.h +86 -0
  757. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +354 -0
  758. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +146 -0
  759. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +79 -0
  760. data/src/core/lib/event_engine/default_event_engine.cc +13 -1
  761. data/src/core/lib/event_engine/default_event_engine_factory.cc +14 -2
  762. data/src/core/lib/event_engine/poller.h +2 -2
  763. data/src/core/lib/event_engine/posix.h +4 -0
  764. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +1 -1
  765. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +7 -18
  766. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +9 -0
  767. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +41 -45
  768. data/src/core/lib/event_engine/posix_engine/posix_engine.h +1 -1
  769. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +4 -4
  770. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +7 -8
  771. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +6 -1
  772. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -0
  773. data/src/core/lib/event_engine/posix_engine/timer_manager.h +1 -1
  774. data/src/core/lib/event_engine/shim.cc +9 -1
  775. data/src/core/lib/event_engine/{thread_pool.cc → thread_pool/original_thread_pool.cc} +28 -25
  776. data/src/core/lib/event_engine/{thread_pool.h → thread_pool/original_thread_pool.h} +11 -15
  777. data/src/core/lib/event_engine/thread_pool/thread_pool.h +50 -0
  778. data/src/core/lib/event_engine/{executor/executor.h → thread_pool/thread_pool_factory.cc} +17 -15
  779. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +489 -0
  780. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +249 -0
  781. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +166 -0
  782. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +108 -0
  783. data/src/core/lib/event_engine/trace.cc +1 -0
  784. data/src/core/lib/event_engine/trace.h +6 -0
  785. data/src/core/lib/event_engine/windows/iocp.cc +4 -3
  786. data/src/core/lib/event_engine/windows/iocp.h +3 -3
  787. data/src/core/lib/event_engine/windows/win_socket.cc +6 -6
  788. data/src/core/lib/event_engine/windows/win_socket.h +4 -4
  789. data/src/core/lib/event_engine/windows/windows_endpoint.cc +11 -10
  790. data/src/core/lib/event_engine/windows/windows_endpoint.h +3 -2
  791. data/src/core/lib/event_engine/windows/windows_engine.cc +19 -17
  792. data/src/core/lib/event_engine/windows/windows_engine.h +6 -6
  793. data/src/core/lib/event_engine/windows/windows_listener.cc +3 -3
  794. data/src/core/lib/event_engine/windows/windows_listener.h +3 -2
  795. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +63 -0
  796. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +71 -0
  797. data/src/core/lib/event_engine/work_queue/work_queue.h +62 -0
  798. data/src/core/lib/experiments/config.cc +38 -7
  799. data/src/core/lib/experiments/config.h +16 -0
  800. data/src/core/lib/experiments/experiments.cc +69 -19
  801. data/src/core/lib/experiments/experiments.h +29 -20
  802. data/src/core/lib/gpr/log_internal.h +55 -0
  803. data/src/core/lib/gpr/posix/time.cc +5 -0
  804. data/src/core/lib/gprpp/crash.cc +10 -0
  805. data/src/core/lib/gprpp/crash.h +3 -0
  806. data/src/core/lib/gprpp/per_cpu.cc +33 -0
  807. data/src/core/lib/gprpp/per_cpu.h +29 -6
  808. data/src/core/lib/gprpp/status_helper.cc +2 -2
  809. data/src/core/lib/gprpp/time.cc +1 -0
  810. data/src/core/lib/gprpp/validation_errors.cc +8 -3
  811. data/src/core/lib/gprpp/validation_errors.h +16 -9
  812. data/src/core/lib/iomgr/buffer_list.h +0 -1
  813. data/src/core/lib/iomgr/cfstream_handle.cc +1 -1
  814. data/src/core/lib/iomgr/endpoint_cfstream.cc +10 -8
  815. data/src/core/lib/iomgr/ev_apple.cc +12 -12
  816. data/src/core/lib/iomgr/ev_epoll1_linux.cc +10 -3
  817. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +15 -1
  818. data/src/core/lib/iomgr/iocp_windows.cc +24 -3
  819. data/src/core/lib/iomgr/iocp_windows.h +11 -0
  820. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +1 -1
  821. data/src/core/lib/iomgr/socket_utils_common_posix.cc +4 -2
  822. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  823. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  824. data/src/core/lib/iomgr/socket_windows.cc +61 -7
  825. data/src/core/lib/iomgr/socket_windows.h +9 -2
  826. data/src/core/lib/iomgr/tcp_client_cfstream.cc +14 -3
  827. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -0
  828. data/src/core/lib/iomgr/tcp_server_posix.cc +148 -107
  829. data/src/core/lib/iomgr/tcp_server_utils_posix.h +1 -1
  830. data/src/core/lib/iomgr/tcp_server_windows.cc +1 -1
  831. data/src/core/lib/iomgr/timer_generic.cc +17 -16
  832. data/src/core/lib/json/json.h +2 -218
  833. data/src/core/lib/json/json_object_loader.cc +24 -25
  834. data/src/core/lib/json/json_object_loader.h +30 -18
  835. data/src/core/lib/json/json_reader.cc +69 -42
  836. data/src/core/lib/json/json_reader.h +34 -0
  837. data/src/core/lib/json/json_util.cc +10 -15
  838. data/src/core/lib/json/json_util.h +5 -4
  839. data/src/core/lib/json/json_writer.cc +24 -25
  840. data/src/core/lib/json/json_writer.h +33 -0
  841. data/src/core/lib/load_balancing/lb_policy.h +13 -0
  842. data/src/core/lib/load_balancing/lb_policy_registry.cc +9 -8
  843. data/src/core/lib/matchers/matchers.cc +3 -4
  844. data/src/core/lib/matchers/matchers.h +2 -1
  845. data/src/core/lib/promise/activity.cc +5 -0
  846. data/src/core/lib/promise/activity.h +10 -0
  847. data/src/core/lib/promise/detail/promise_factory.h +1 -1
  848. data/src/core/lib/promise/party.cc +31 -13
  849. data/src/core/lib/promise/party.h +11 -2
  850. data/src/core/lib/promise/pipe.h +16 -2
  851. data/src/core/lib/promise/prioritized_race.h +95 -0
  852. data/src/core/lib/promise/sleep.cc +2 -1
  853. data/src/core/lib/resolver/server_address.cc +0 -8
  854. data/src/core/lib/resolver/server_address.h +0 -6
  855. data/src/core/lib/resource_quota/memory_quota.cc +7 -7
  856. data/src/core/lib/resource_quota/memory_quota.h +1 -2
  857. data/src/core/lib/security/authorization/audit_logging.cc +98 -0
  858. data/src/core/lib/security/authorization/audit_logging.h +73 -0
  859. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +47 -2
  860. data/src/core/lib/security/authorization/grpc_authorization_engine.h +18 -1
  861. data/src/core/lib/security/authorization/rbac_policy.cc +36 -4
  862. data/src/core/lib/security/authorization/rbac_policy.h +19 -2
  863. data/src/core/lib/security/authorization/stdout_logger.cc +75 -0
  864. data/src/core/lib/security/authorization/stdout_logger.h +61 -0
  865. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +8 -4
  866. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +8 -18
  867. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +14 -8
  868. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +54 -49
  869. data/src/core/lib/security/credentials/external/external_account_credentials.cc +64 -64
  870. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +23 -21
  871. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +29 -27
  872. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +5 -2
  873. data/src/core/lib/security/credentials/jwt/json_token.cc +19 -16
  874. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +10 -5
  875. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +40 -38
  876. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +18 -16
  877. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +1 -5
  878. data/src/core/lib/security/util/json_util.cc +6 -5
  879. data/src/core/lib/service_config/service_config_call_data.h +49 -20
  880. data/src/core/lib/service_config/service_config_impl.cc +13 -6
  881. data/src/core/lib/slice/slice.h +2 -0
  882. data/src/core/lib/surface/call.cc +107 -47
  883. data/src/core/lib/surface/call.h +1 -5
  884. data/src/core/lib/surface/completion_queue.cc +8 -3
  885. data/src/core/lib/surface/server.cc +47 -19
  886. data/src/core/lib/surface/version.cc +2 -2
  887. data/src/core/lib/transport/batch_builder.cc +15 -12
  888. data/src/core/lib/transport/batch_builder.h +48 -36
  889. data/src/core/lib/transport/metadata_batch.h +2 -59
  890. data/src/core/lib/transport/metadata_compression_traits.h +67 -0
  891. data/src/core/lib/transport/simple_slice_based_metadata.h +48 -0
  892. data/src/core/lib/transport/transport.h +3 -0
  893. data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -6
  894. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +2 -0
  895. data/src/ruby/ext/grpc/extconf.rb +8 -9
  896. data/src/ruby/lib/grpc/version.rb +1 -1
  897. data/third_party/abseil-cpp/absl/base/config.h +1 -1
  898. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +9 -8
  899. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +1 -1
  900. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +3 -3
  901. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +10 -6
  902. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +7 -4
  903. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +6 -4
  904. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +33 -47
  905. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +9 -5
  906. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +5 -9
  907. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +4 -2
  908. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +31 -22
  909. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +29 -26
  910. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +8 -0
  911. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +189 -13
  912. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +62 -0
  913. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_openbsd.c +31 -0
  914. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +6 -4
  915. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +795 -795
  916. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +1 -5
  917. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +4 -0
  918. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +18 -6
  919. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +15 -7
  920. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +1 -1
  921. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +1 -1
  922. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +1 -0
  923. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +3 -0
  924. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +24 -24
  925. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +1 -1
  926. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +7 -7
  927. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +74 -74
  928. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +1 -2
  929. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +11 -11
  930. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c +12 -12
  931. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +14 -15
  932. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +1 -1
  933. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +10 -10
  934. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +23 -23
  935. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +13 -13
  936. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +1 -1
  937. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +2 -2
  938. data/third_party/boringssl-with-bazel/src/crypto/{hkdf → fipsmodule/hkdf}/hkdf.c +1 -1
  939. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +2 -10
  940. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +1 -4
  941. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +115 -133
  942. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +12 -14
  943. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +57 -47
  944. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +1 -8
  945. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c +27 -28
  946. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +11 -23
  947. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +21 -16
  948. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +5 -288
  949. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +143 -83
  950. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +95 -183
  951. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +71 -0
  952. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +8 -0
  953. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +33 -0
  954. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +162 -6
  955. data/third_party/boringssl-with-bazel/src/crypto/internal.h +18 -0
  956. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +32 -2
  957. data/third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c +11 -12
  958. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +833 -0
  959. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +6 -13
  960. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +18 -14
  961. data/third_party/boringssl-with-bazel/src/crypto/{refcount_lock.c → refcount_no_threads.c} +3 -13
  962. data/third_party/boringssl-with-bazel/src/crypto/refcount_win.c +89 -0
  963. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +77 -0
  964. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c +568 -0
  965. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +62 -0
  966. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +228 -56
  967. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +35 -0
  968. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +596 -49
  969. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +27 -18
  970. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +1 -1
  971. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +2 -1
  972. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +2 -1
  973. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +17 -39
  974. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +18 -14
  975. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +39 -48
  976. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +0 -140
  977. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +17 -21
  978. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +72 -23
  979. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +7 -3
  980. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +3 -4
  981. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +1 -72
  982. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +11 -14
  983. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +1 -1
  984. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +4 -2
  985. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +2 -2
  986. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +1 -1
  987. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +33 -46
  988. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +1 -0
  989. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +3 -5
  990. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +18 -49
  991. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +14 -26
  992. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +7 -3
  993. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +17 -10
  994. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +5 -3
  995. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +5 -7
  996. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +6 -4
  997. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +32 -1
  998. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -12
  999. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +1 -4
  1000. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +3 -3
  1001. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +28 -0
  1002. data/third_party/boringssl-with-bazel/src/include/openssl/kyber.h +128 -0
  1003. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +2 -11
  1004. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +8 -1
  1005. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +0 -3
  1006. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +91 -1
  1007. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +5 -0
  1008. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +149 -20
  1009. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +8 -12
  1010. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +4 -0
  1011. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +4 -0
  1012. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +8 -0
  1013. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +758 -608
  1014. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +42 -10
  1015. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +11 -6
  1016. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +2 -4
  1017. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +33 -18
  1018. data/third_party/boringssl-with-bazel/src/ssl/internal.h +82 -35
  1019. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +37 -18
  1020. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +8 -4
  1021. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +187 -193
  1022. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  1023. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +43 -92
  1024. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +85 -10
  1025. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +17 -4
  1026. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +19 -21
  1027. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +27 -19
  1028. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +2 -1
  1029. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +1 -1
  1030. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +5 -21
  1031. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +5 -2
  1032. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_msvc.h +1281 -0
  1033. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64_msvc.h +2002 -0
  1034. data/third_party/cares/cares/include/ares.h +23 -1
  1035. data/third_party/cares/cares/{src/lib → include}/ares_nameser.h +9 -7
  1036. data/third_party/cares/cares/include/ares_rules.h +2 -2
  1037. data/third_party/cares/cares/include/ares_version.h +3 -3
  1038. data/third_party/cares/cares/src/lib/ares__addrinfo2hostent.c +266 -0
  1039. data/third_party/cares/cares/src/lib/ares__addrinfo_localhost.c +240 -0
  1040. data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +49 -80
  1041. data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +37 -43
  1042. data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +12 -4
  1043. data/third_party/cares/cares/src/lib/ares_data.c +16 -0
  1044. data/third_party/cares/cares/src/lib/ares_data.h +7 -0
  1045. data/third_party/cares/cares/src/lib/ares_destroy.c +8 -0
  1046. data/third_party/cares/cares/src/lib/ares_expand_name.c +17 -6
  1047. data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +1 -0
  1048. data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +156 -78
  1049. data/third_party/cares/cares/src/lib/ares_gethostbyname.c +130 -326
  1050. data/third_party/cares/cares/src/lib/ares_init.c +97 -485
  1051. data/third_party/cares/cares/src/lib/ares_library_init.c +2 -89
  1052. data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +23 -142
  1053. data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +22 -142
  1054. data/third_party/cares/cares/src/lib/ares_parse_uri_reply.c +184 -0
  1055. data/third_party/cares/cares/src/lib/ares_private.h +30 -16
  1056. data/third_party/cares/cares/src/lib/ares_process.c +55 -16
  1057. data/third_party/cares/cares/src/lib/ares_query.c +1 -35
  1058. data/third_party/cares/cares/src/lib/ares_rand.c +279 -0
  1059. data/third_party/cares/cares/src/lib/ares_send.c +5 -7
  1060. data/third_party/cares/cares/src/lib/ares_strdup.c +12 -19
  1061. data/third_party/cares/cares/src/lib/ares_strsplit.c +44 -128
  1062. data/third_party/cares/cares/src/lib/ares_strsplit.h +9 -10
  1063. data/third_party/cares/cares/src/lib/inet_net_pton.c +78 -116
  1064. data/third_party/cares/cares/src/tools/ares_getopt.h +53 -0
  1065. data/third_party/upb/upb/{table_internal.h → alloc.h} +6 -6
  1066. data/third_party/upb/upb/arena.h +4 -193
  1067. data/third_party/upb/upb/array.h +4 -51
  1068. data/third_party/upb/upb/base/descriptor_constants.h +104 -0
  1069. data/third_party/upb/upb/base/log2.h +57 -0
  1070. data/third_party/upb/upb/{status.c → base/status.c} +2 -7
  1071. data/third_party/upb/upb/base/status.h +66 -0
  1072. data/third_party/upb/upb/base/string_view.h +75 -0
  1073. data/third_party/upb/upb/{array.c → collections/array.c} +67 -36
  1074. data/third_party/upb/upb/collections/array.h +85 -0
  1075. data/third_party/upb/upb/collections/array_internal.h +135 -0
  1076. data/third_party/upb/upb/{map.c → collections/map.c} +53 -26
  1077. data/third_party/upb/upb/collections/map.h +135 -0
  1078. data/third_party/upb/upb/collections/map_gencode_util.h +78 -0
  1079. data/third_party/upb/upb/collections/map_internal.h +170 -0
  1080. data/third_party/upb/upb/collections/map_sorter.c +166 -0
  1081. data/third_party/upb/upb/collections/map_sorter_internal.h +109 -0
  1082. data/third_party/upb/upb/{message_value.h → collections/message_value.h} +12 -13
  1083. data/third_party/upb/upb/decode.h +3 -62
  1084. data/third_party/upb/upb/def.h +4 -384
  1085. data/third_party/upb/upb/def.hpp +3 -411
  1086. data/third_party/upb/upb/encode.h +3 -48
  1087. data/third_party/upb/upb/extension_registry.h +3 -52
  1088. data/third_party/upb/upb/{table.c → hash/common.c} +52 -110
  1089. data/third_party/upb/upb/hash/common.h +199 -0
  1090. data/third_party/upb/upb/hash/int_table.h +102 -0
  1091. data/third_party/upb/upb/hash/str_table.h +161 -0
  1092. data/third_party/upb/upb/{json_decode.c → json/decode.c} +63 -98
  1093. data/third_party/upb/upb/json/decode.h +52 -0
  1094. data/third_party/upb/upb/{json_encode.c → json/encode.c} +69 -45
  1095. data/third_party/upb/upb/json/encode.h +70 -0
  1096. data/third_party/upb/upb/json_decode.h +4 -15
  1097. data/third_party/upb/upb/json_encode.h +4 -33
  1098. data/third_party/upb/upb/lex/atoi.c +68 -0
  1099. data/third_party/upb/upb/lex/atoi.h +53 -0
  1100. data/third_party/upb/upb/{upb.c → lex/round_trip.c} +2 -11
  1101. data/third_party/upb/upb/{internal/upb.h → lex/round_trip.h} +17 -30
  1102. data/third_party/upb/upb/lex/strtod.c +97 -0
  1103. data/third_party/upb/upb/lex/strtod.h +46 -0
  1104. data/third_party/upb/upb/lex/unicode.c +57 -0
  1105. data/third_party/upb/upb/lex/unicode.h +77 -0
  1106. data/third_party/upb/upb/map.h +4 -85
  1107. data/third_party/upb/upb/mem/alloc.c +47 -0
  1108. data/third_party/upb/upb/mem/alloc.h +98 -0
  1109. data/third_party/upb/upb/mem/arena.c +367 -0
  1110. data/third_party/upb/upb/mem/arena.h +160 -0
  1111. data/third_party/upb/upb/mem/arena_internal.h +114 -0
  1112. data/third_party/upb/upb/message/accessors.c +68 -0
  1113. data/third_party/upb/upb/message/accessors.h +379 -0
  1114. data/third_party/upb/upb/message/accessors_internal.h +325 -0
  1115. data/third_party/upb/upb/message/extension_internal.h +83 -0
  1116. data/third_party/upb/upb/message/internal.h +135 -0
  1117. data/third_party/upb/upb/message/message.c +180 -0
  1118. data/third_party/upb/upb/message/message.h +69 -0
  1119. data/third_party/upb/upb/mini_table/common.c +128 -0
  1120. data/third_party/upb/upb/mini_table/common.h +170 -0
  1121. data/third_party/upb/upb/mini_table/common_internal.h +111 -0
  1122. data/third_party/upb/upb/{mini_table.c → mini_table/decode.c} +513 -533
  1123. data/third_party/upb/upb/mini_table/decode.h +179 -0
  1124. data/third_party/upb/upb/mini_table/encode.c +300 -0
  1125. data/third_party/upb/upb/mini_table/encode_internal.h +111 -0
  1126. data/third_party/upb/upb/{mini_table.hpp → mini_table/encode_internal.hpp} +32 -8
  1127. data/third_party/upb/upb/mini_table/enum_internal.h +88 -0
  1128. data/third_party/upb/upb/mini_table/extension_internal.h +47 -0
  1129. data/third_party/upb/upb/{extension_registry.c → mini_table/extension_registry.c} +27 -24
  1130. data/third_party/upb/upb/mini_table/extension_registry.h +104 -0
  1131. data/third_party/upb/upb/mini_table/field_internal.h +192 -0
  1132. data/third_party/upb/upb/mini_table/file_internal.h +47 -0
  1133. data/third_party/upb/upb/mini_table/message_internal.h +136 -0
  1134. data/third_party/upb/upb/mini_table/sub_internal.h +38 -0
  1135. data/third_party/upb/upb/mini_table/types.h +40 -0
  1136. data/third_party/upb/upb/mini_table.h +4 -157
  1137. data/third_party/upb/upb/msg.h +3 -38
  1138. data/third_party/upb/upb/port/atomic.h +101 -0
  1139. data/third_party/upb/upb/{port_def.inc → port/def.inc} +94 -27
  1140. data/third_party/upb/upb/{port_undef.inc → port/undef.inc} +13 -3
  1141. data/third_party/upb/upb/{internal → port}/vsnprintf_compat.h +5 -7
  1142. data/third_party/upb/upb/reflection/common.h +67 -0
  1143. data/third_party/upb/upb/reflection/def.h +42 -0
  1144. data/third_party/upb/upb/reflection/def.hpp +610 -0
  1145. data/third_party/upb/upb/reflection/def_builder.c +357 -0
  1146. data/third_party/upb/upb/reflection/def_builder_internal.h +157 -0
  1147. data/third_party/upb/upb/reflection/def_pool.c +462 -0
  1148. data/third_party/upb/upb/reflection/def_pool.h +108 -0
  1149. data/third_party/upb/upb/reflection/def_pool_internal.h +77 -0
  1150. data/third_party/upb/upb/reflection/def_type.c +50 -0
  1151. data/third_party/upb/upb/reflection/def_type.h +81 -0
  1152. data/third_party/upb/upb/reflection/desc_state.c +53 -0
  1153. data/third_party/upb/upb/reflection/desc_state_internal.h +64 -0
  1154. data/third_party/upb/upb/reflection/enum_def.c +310 -0
  1155. data/third_party/upb/upb/reflection/enum_def.h +80 -0
  1156. data/third_party/upb/upb/reflection/enum_def_internal.h +56 -0
  1157. data/third_party/upb/upb/reflection/enum_reserved_range.c +84 -0
  1158. data/third_party/upb/upb/reflection/enum_reserved_range.h +51 -0
  1159. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +55 -0
  1160. data/third_party/upb/upb/reflection/enum_value_def.c +144 -0
  1161. data/third_party/upb/upb/reflection/enum_value_def.h +57 -0
  1162. data/third_party/upb/upb/reflection/enum_value_def_internal.h +57 -0
  1163. data/third_party/upb/upb/reflection/extension_range.c +93 -0
  1164. data/third_party/upb/upb/reflection/extension_range.h +55 -0
  1165. data/third_party/upb/upb/reflection/extension_range_internal.h +54 -0
  1166. data/third_party/upb/upb/reflection/field_def.c +930 -0
  1167. data/third_party/upb/upb/reflection/field_def.h +91 -0
  1168. data/third_party/upb/upb/reflection/field_def_internal.h +76 -0
  1169. data/third_party/upb/upb/reflection/file_def.c +370 -0
  1170. data/third_party/upb/upb/reflection/file_def.h +77 -0
  1171. data/third_party/upb/upb/reflection/file_def_internal.h +57 -0
  1172. data/third_party/upb/upb/reflection/message.c +233 -0
  1173. data/third_party/upb/upb/reflection/message.h +102 -0
  1174. data/third_party/upb/upb/reflection/message.hpp +37 -0
  1175. data/third_party/upb/upb/reflection/message_def.c +718 -0
  1176. data/third_party/upb/upb/reflection/message_def.h +174 -0
  1177. data/third_party/upb/upb/reflection/message_def_internal.h +63 -0
  1178. data/third_party/upb/upb/reflection/message_reserved_range.c +81 -0
  1179. data/third_party/upb/upb/reflection/message_reserved_range.h +51 -0
  1180. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +55 -0
  1181. data/third_party/upb/upb/reflection/method_def.c +124 -0
  1182. data/third_party/upb/upb/reflection/method_def.h +59 -0
  1183. data/third_party/upb/upb/reflection/method_def_internal.h +53 -0
  1184. data/third_party/upb/upb/reflection/oneof_def.c +226 -0
  1185. data/third_party/upb/upb/reflection/oneof_def.h +66 -0
  1186. data/third_party/upb/upb/reflection/oneof_def_internal.h +57 -0
  1187. data/third_party/upb/upb/reflection/service_def.c +128 -0
  1188. data/third_party/upb/upb/reflection/service_def.h +60 -0
  1189. data/third_party/upb/upb/reflection/service_def_internal.h +53 -0
  1190. data/third_party/upb/upb/reflection.h +4 -78
  1191. data/third_party/upb/upb/reflection.hpp +3 -7
  1192. data/third_party/upb/upb/status.h +4 -34
  1193. data/third_party/upb/upb/{collections.h → string_view.h} +7 -7
  1194. data/third_party/upb/upb/{text_encode.c → text/encode.c} +74 -70
  1195. data/third_party/upb/upb/text/encode.h +69 -0
  1196. data/third_party/upb/upb/text_encode.h +4 -32
  1197. data/third_party/upb/upb/upb.h +6 -151
  1198. data/third_party/upb/upb/upb.hpp +10 -18
  1199. data/third_party/upb/upb/wire/common.h +44 -0
  1200. data/third_party/upb/upb/wire/common_internal.h +50 -0
  1201. data/third_party/upb/upb/wire/decode.c +1343 -0
  1202. data/third_party/upb/upb/wire/decode.h +108 -0
  1203. data/third_party/upb/upb/{decode_fast.c → wire/decode_fast.c} +184 -225
  1204. data/third_party/upb/upb/{decode_fast.h → wire/decode_fast.h} +21 -7
  1205. data/third_party/upb/upb/{internal/decode.h → wire/decode_internal.h} +44 -92
  1206. data/third_party/upb/upb/{encode.c → wire/encode.c} +114 -95
  1207. data/third_party/upb/upb/wire/encode.h +92 -0
  1208. data/third_party/upb/upb/wire/eps_copy_input_stream.c +39 -0
  1209. data/third_party/upb/upb/wire/eps_copy_input_stream.h +425 -0
  1210. data/third_party/upb/upb/wire/reader.c +67 -0
  1211. data/third_party/upb/upb/wire/reader.h +227 -0
  1212. data/third_party/upb/upb/wire/swap_internal.h +63 -0
  1213. data/third_party/upb/upb/wire/types.h +41 -0
  1214. data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-neon.c +1 -1
  1215. data/third_party/{upb/third_party/utf8_range → utf8_range}/utf8_range.h +12 -0
  1216. metadata +202 -51
  1217. data/src/core/ext/filters/client_channel/health/health_check_client.cc +0 -175
  1218. data/src/core/ext/filters/client_channel/health/health_check_client.h +0 -43
  1219. data/src/core/ext/transport/chttp2/transport/context_list.cc +0 -71
  1220. data/src/core/ext/transport/chttp2/transport/context_list.h +0 -54
  1221. data/third_party/cares/cares/src/lib/ares_library_init.h +0 -43
  1222. data/third_party/upb/upb/arena.c +0 -277
  1223. data/third_party/upb/upb/decode.c +0 -1221
  1224. data/third_party/upb/upb/def.c +0 -3269
  1225. data/third_party/upb/upb/internal/table.h +0 -385
  1226. data/third_party/upb/upb/msg.c +0 -368
  1227. data/third_party/upb/upb/msg_internal.h +0 -837
  1228. data/third_party/upb/upb/reflection.c +0 -323
  1229. /data/third_party/{upb/third_party/utf8_range → utf8_range}/naive.c +0 -0
  1230. /data/third_party/{upb/third_party/utf8_range → utf8_range}/range2-sse.c +0 -0
@@ -0,0 +1,88 @@
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_MINI_TABLE_ENUM_INTERNAL_H_
29
+ #define UPB_MINI_TABLE_ENUM_INTERNAL_H_
30
+
31
+ #include "upb/mini_table/types.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ struct upb_MiniTableEnum {
37
+ uint32_t mask_limit; // Limit enum value that can be tested with mask.
38
+ uint32_t value_count; // Number of values after the bitfield.
39
+ uint32_t data[]; // Bitmask + enumerated values follow.
40
+ };
41
+
42
+ typedef enum {
43
+ _kUpb_FastEnumCheck_ValueIsInEnum = 0,
44
+ _kUpb_FastEnumCheck_ValueIsNotInEnum = 1,
45
+ _kUpb_FastEnumCheck_CannotCheckFast = 2,
46
+ } _kUpb_FastEnumCheck_Status;
47
+
48
+ #ifdef __cplusplus
49
+ extern "C" {
50
+ #endif
51
+
52
+ UPB_INLINE _kUpb_FastEnumCheck_Status
53
+ _upb_MiniTable_CheckEnumValueFast(const upb_MiniTableEnum* e, uint32_t val) {
54
+ if (UPB_UNLIKELY(val >= 64)) return _kUpb_FastEnumCheck_CannotCheckFast;
55
+ uint64_t mask = e->data[0] | ((uint64_t)e->data[1] << 32);
56
+ return (mask & (1ULL << val)) ? _kUpb_FastEnumCheck_ValueIsInEnum
57
+ : _kUpb_FastEnumCheck_ValueIsNotInEnum;
58
+ }
59
+
60
+ UPB_INLINE bool _upb_MiniTable_CheckEnumValueSlow(const upb_MiniTableEnum* e,
61
+ uint32_t val) {
62
+ if (val < e->mask_limit) return e->data[val / 32] & (1ULL << (val % 32));
63
+ // OPT: binary search long lists?
64
+ const uint32_t* start = &e->data[e->mask_limit / 32];
65
+ const uint32_t* limit = &e->data[(e->mask_limit / 32) + e->value_count];
66
+ for (const uint32_t* p = start; p < limit; p++) {
67
+ if (*p == val) return true;
68
+ }
69
+ return false;
70
+ }
71
+
72
+ // Validates enum value against range defined by enum mini table.
73
+ UPB_INLINE bool upb_MiniTableEnum_CheckValue(const upb_MiniTableEnum* e,
74
+ uint32_t val) {
75
+ _kUpb_FastEnumCheck_Status status = _upb_MiniTable_CheckEnumValueFast(e, val);
76
+ if (UPB_UNLIKELY(status == _kUpb_FastEnumCheck_CannotCheckFast)) {
77
+ return _upb_MiniTable_CheckEnumValueSlow(e, val);
78
+ }
79
+ return status == _kUpb_FastEnumCheck_ValueIsInEnum ? true : false;
80
+ }
81
+
82
+ #ifdef __cplusplus
83
+ } /* extern "C" */
84
+ #endif
85
+
86
+ #include "upb/port/undef.inc"
87
+
88
+ #endif /* UPB_MINI_TABLE_ENUM_INTERNAL_H_ */
@@ -0,0 +1,47 @@
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_MINI_TABLE_EXTENSION_INTERNAL_H_
29
+ #define UPB_MINI_TABLE_EXTENSION_INTERNAL_H_
30
+
31
+ #include "upb/mini_table/field_internal.h"
32
+ #include "upb/mini_table/sub_internal.h"
33
+
34
+ // Must be last.
35
+ #include "upb/port/def.inc"
36
+
37
+ struct upb_MiniTableExtension {
38
+ // Do not move this field. We need to be able to alias pointers.
39
+ upb_MiniTableField field;
40
+
41
+ const upb_MiniTable* extendee;
42
+ upb_MiniTableSub sub; // NULL unless submessage or proto2 enum
43
+ };
44
+
45
+ #include "upb/port/undef.inc"
46
+
47
+ #endif /* UPB_MINI_TABLE_EXTENSION_INTERNAL_H_ */
@@ -25,22 +25,21 @@
25
25
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
26
  */
27
27
 
28
- #include "upb/extension_registry.h"
28
+ #include "upb/mini_table/extension_registry.h"
29
29
 
30
- #include "upb/internal/table.h"
31
- #include "upb/msg.h"
32
- #include "upb/msg_internal.h"
30
+ #include "upb/hash/str_table.h"
31
+ #include "upb/mini_table/extension_internal.h"
33
32
 
34
33
  // Must be last.
35
- #include "upb/port_def.inc"
34
+ #include "upb/port/def.inc"
35
+
36
+ #define EXTREG_KEY_SIZE (sizeof(upb_MiniTable*) + sizeof(uint32_t))
36
37
 
37
38
  struct upb_ExtensionRegistry {
38
39
  upb_Arena* arena;
39
- upb_strtable exts; /* Key is upb_MiniTable* concatenated with fieldnum. */
40
+ upb_strtable exts; // Key is upb_MiniTable* concatenated with fieldnum.
40
41
  };
41
42
 
42
- #define EXTREG_KEY_SIZE (sizeof(upb_MiniTable*) + sizeof(uint32_t))
43
-
44
43
  static void extreg_key(char* buf, const upb_MiniTable* l, uint32_t fieldnum) {
45
44
  memcpy(buf, &l, sizeof(l));
46
45
  memcpy(buf + sizeof(l), &fieldnum, sizeof(fieldnum));
@@ -54,37 +53,41 @@ upb_ExtensionRegistry* upb_ExtensionRegistry_New(upb_Arena* arena) {
54
53
  return r;
55
54
  }
56
55
 
57
- bool _upb_extreg_add(upb_ExtensionRegistry* r,
58
- const upb_MiniTable_Extension** e, size_t count) {
56
+ UPB_API bool upb_ExtensionRegistry_Add(upb_ExtensionRegistry* r,
57
+ const upb_MiniTableExtension* e) {
59
58
  char buf[EXTREG_KEY_SIZE];
60
- const upb_MiniTable_Extension** start = e;
61
- const upb_MiniTable_Extension** end = UPB_PTRADD(e, count);
59
+ extreg_key(buf, e->extendee, e->field.number);
60
+ if (upb_strtable_lookup2(&r->exts, buf, EXTREG_KEY_SIZE, NULL)) return false;
61
+ return upb_strtable_insert(&r->exts, buf, EXTREG_KEY_SIZE,
62
+ upb_value_constptr(e), r->arena);
63
+ }
64
+
65
+ bool upb_ExtensionRegistry_AddArray(upb_ExtensionRegistry* r,
66
+ const upb_MiniTableExtension** e,
67
+ size_t count) {
68
+ const upb_MiniTableExtension** start = e;
69
+ const upb_MiniTableExtension** end = UPB_PTRADD(e, count);
62
70
  for (; e < end; e++) {
63
- const upb_MiniTable_Extension* ext = *e;
64
- extreg_key(buf, ext->extendee, ext->field.number);
65
- if (!upb_strtable_insert(&r->exts, buf, EXTREG_KEY_SIZE,
66
- upb_value_constptr(ext), r->arena)) {
67
- goto failure;
68
- }
71
+ if (!upb_ExtensionRegistry_Add(r, *e)) goto failure;
69
72
  }
70
73
  return true;
71
74
 
72
75
  failure:
73
- /* Back out the entries previously added. */
76
+ // Back out the entries previously added.
74
77
  for (end = e, e = start; e < end; e++) {
75
- const upb_MiniTable_Extension* ext = *e;
78
+ const upb_MiniTableExtension* ext = *e;
79
+ char buf[EXTREG_KEY_SIZE];
76
80
  extreg_key(buf, ext->extendee, ext->field.number);
77
81
  upb_strtable_remove2(&r->exts, buf, EXTREG_KEY_SIZE, NULL);
78
82
  }
79
83
  return false;
80
84
  }
81
85
 
82
- const upb_MiniTable_Extension* _upb_extreg_get(const upb_ExtensionRegistry* r,
83
- const upb_MiniTable* l,
84
- uint32_t num) {
86
+ const upb_MiniTableExtension* upb_ExtensionRegistry_Lookup(
87
+ const upb_ExtensionRegistry* r, const upb_MiniTable* t, uint32_t num) {
85
88
  char buf[EXTREG_KEY_SIZE];
86
89
  upb_value v;
87
- extreg_key(buf, l, num);
90
+ extreg_key(buf, t, num);
88
91
  if (upb_strtable_lookup2(&r->exts, buf, EXTREG_KEY_SIZE, &v)) {
89
92
  return upb_value_getconstptr(v);
90
93
  } else {
@@ -0,0 +1,104 @@
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_MINI_TABLE_EXTENSION_REGISTRY_H_
29
+ #define UPB_MINI_TABLE_EXTENSION_REGISTRY_H_
30
+
31
+ #include "upb/mem/arena.h"
32
+ #include "upb/mini_table/types.h"
33
+
34
+ // Must be last.
35
+ #include "upb/port/def.inc"
36
+
37
+ #ifdef __cplusplus
38
+ extern "C" {
39
+ #endif
40
+
41
+ /* Extension registry: a dynamic data structure that stores a map of:
42
+ * (upb_MiniTable, number) -> extension info
43
+ *
44
+ * upb_decode() uses upb_ExtensionRegistry to look up extensions while parsing
45
+ * binary format.
46
+ *
47
+ * upb_ExtensionRegistry is part of the mini-table (msglayout) family of
48
+ * objects. Like all mini-table objects, it is suitable for reflection-less
49
+ * builds that do not want to expose names into the binary.
50
+ *
51
+ * Unlike most mini-table types, upb_ExtensionRegistry requires dynamic memory
52
+ * allocation and dynamic initialization:
53
+ * * If reflection is being used, then upb_DefPool will construct an appropriate
54
+ * upb_ExtensionRegistry automatically.
55
+ * * For a mini-table only build, the user must manually construct the
56
+ * upb_ExtensionRegistry and populate it with all of the extensions the user
57
+ * cares about.
58
+ * * A third alternative is to manually unpack relevant extensions after the
59
+ * main parse is complete, similar to how Any works. This is perhaps the
60
+ * nicest solution from the perspective of reducing dependencies, avoiding
61
+ * dynamic memory allocation, and avoiding the need to parse uninteresting
62
+ * extensions. The downsides are:
63
+ * (1) parse errors are not caught during the main parse
64
+ * (2) the CPU hit of parsing comes during access, which could cause an
65
+ * undesirable stutter in application performance.
66
+ *
67
+ * Users cannot directly get or put into this map. Users can only add the
68
+ * extensions from a generated module and pass the extension registry to the
69
+ * binary decoder.
70
+ *
71
+ * A upb_DefPool provides a upb_ExtensionRegistry, so any users who use
72
+ * reflection do not need to populate a upb_ExtensionRegistry directly.
73
+ */
74
+
75
+ typedef struct upb_ExtensionRegistry upb_ExtensionRegistry;
76
+
77
+ // Creates a upb_ExtensionRegistry in the given arena.
78
+ // The arena must outlive any use of the extreg.
79
+ UPB_API upb_ExtensionRegistry* upb_ExtensionRegistry_New(upb_Arena* arena);
80
+
81
+ UPB_API bool upb_ExtensionRegistry_Add(upb_ExtensionRegistry* r,
82
+ const upb_MiniTableExtension* e);
83
+
84
+ // Adds the given extension info for the array |e| of size |count| into the
85
+ // registry. If there are any errors, the entire array is backed out.
86
+ // The extensions must outlive the registry.
87
+ // Possible errors include OOM or an extension number that already exists.
88
+ // TODO(salo): There is currently no way to know the exact reason for failure.
89
+ bool upb_ExtensionRegistry_AddArray(upb_ExtensionRegistry* r,
90
+ const upb_MiniTableExtension** e,
91
+ size_t count);
92
+
93
+ // Looks up the extension (if any) defined for message type |t| and field
94
+ // number |num|. Returns the extension if found, otherwise NULL.
95
+ UPB_API const upb_MiniTableExtension* upb_ExtensionRegistry_Lookup(
96
+ const upb_ExtensionRegistry* r, const upb_MiniTable* t, uint32_t num);
97
+
98
+ #ifdef __cplusplus
99
+ } /* extern "C" */
100
+ #endif
101
+
102
+ #include "upb/port/undef.inc"
103
+
104
+ #endif /* UPB_MINI_TABLE_EXTENSION_REGISTRY_H_ */
@@ -0,0 +1,192 @@
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_MINI_TABLE_FIELD_INTERNAL_H_
29
+ #define UPB_MINI_TABLE_FIELD_INTERNAL_H_
30
+
31
+ #include "upb/base/descriptor_constants.h"
32
+ #include "upb/mini_table/types.h"
33
+
34
+ // Must be last.
35
+ #include "upb/port/def.inc"
36
+
37
+ // LINT.IfChange(mini_table_field_layout)
38
+
39
+ struct upb_MiniTableField {
40
+ uint32_t number;
41
+ uint16_t offset;
42
+ int16_t presence; // If >0, hasbit_index. If <0, ~oneof_index
43
+
44
+ // Indexes into `upb_MiniTable.subs`
45
+ // Will be set to `kUpb_NoSub` if `descriptortype` != MESSAGE/GROUP/ENUM
46
+ uint16_t UPB_PRIVATE(submsg_index);
47
+
48
+ uint8_t UPB_PRIVATE(descriptortype);
49
+
50
+ // upb_FieldMode | upb_LabelFlags | (upb_FieldRep << kUpb_FieldRep_Shift)
51
+ uint8_t mode;
52
+ };
53
+
54
+ #define kUpb_NoSub ((uint16_t)-1)
55
+
56
+ typedef enum {
57
+ kUpb_FieldMode_Map = 0,
58
+ kUpb_FieldMode_Array = 1,
59
+ kUpb_FieldMode_Scalar = 2,
60
+ } upb_FieldMode;
61
+
62
+ // Mask to isolate the upb_FieldMode from field.mode.
63
+ #define kUpb_FieldMode_Mask 3
64
+
65
+ // Extra flags on the mode field.
66
+ typedef enum {
67
+ kUpb_LabelFlags_IsPacked = 4,
68
+ kUpb_LabelFlags_IsExtension = 8,
69
+ // Indicates that this descriptor type is an "alternate type":
70
+ // - for Int32, this indicates that the actual type is Enum (but was
71
+ // rewritten to Int32 because it is an open enum that requires no check).
72
+ // - for Bytes, this indicates that the actual type is String (but does
73
+ // not require any UTF-8 check).
74
+ kUpb_LabelFlags_IsAlternate = 16,
75
+ } upb_LabelFlags;
76
+
77
+ // Note: we sort by this number when calculating layout order.
78
+ typedef enum {
79
+ kUpb_FieldRep_1Byte = 0,
80
+ kUpb_FieldRep_4Byte = 1,
81
+ kUpb_FieldRep_StringView = 2,
82
+ kUpb_FieldRep_8Byte = 3,
83
+
84
+ kUpb_FieldRep_NativePointer =
85
+ UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte),
86
+ kUpb_FieldRep_Max = kUpb_FieldRep_8Byte,
87
+ } upb_FieldRep;
88
+
89
+ #define kUpb_FieldRep_Shift 6
90
+
91
+ // LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/mini_table_field.ts:mini_table_field_layout)
92
+
93
+ UPB_INLINE upb_FieldRep
94
+ _upb_MiniTableField_GetRep(const upb_MiniTableField* field) {
95
+ return (upb_FieldRep)(field->mode >> kUpb_FieldRep_Shift);
96
+ }
97
+
98
+ #ifdef __cplusplus
99
+ extern "C" {
100
+ #endif
101
+
102
+ UPB_INLINE upb_FieldMode upb_FieldMode_Get(const upb_MiniTableField* field) {
103
+ return (upb_FieldMode)(field->mode & 3);
104
+ }
105
+
106
+ UPB_INLINE void _upb_MiniTableField_CheckIsArray(
107
+ const upb_MiniTableField* field) {
108
+ UPB_ASSUME(_upb_MiniTableField_GetRep(field) == kUpb_FieldRep_NativePointer);
109
+ UPB_ASSUME(upb_FieldMode_Get(field) == kUpb_FieldMode_Array);
110
+ UPB_ASSUME(field->presence == 0);
111
+ }
112
+
113
+ UPB_INLINE void _upb_MiniTableField_CheckIsMap(
114
+ const upb_MiniTableField* field) {
115
+ UPB_ASSUME(_upb_MiniTableField_GetRep(field) == kUpb_FieldRep_NativePointer);
116
+ UPB_ASSUME(upb_FieldMode_Get(field) == kUpb_FieldMode_Map);
117
+ UPB_ASSUME(field->presence == 0);
118
+ }
119
+
120
+ UPB_INLINE bool upb_IsRepeatedOrMap(const upb_MiniTableField* field) {
121
+ // This works because upb_FieldMode has no value 3.
122
+ return !(field->mode & kUpb_FieldMode_Scalar);
123
+ }
124
+
125
+ UPB_INLINE bool upb_IsSubMessage(const upb_MiniTableField* field) {
126
+ return field->UPB_PRIVATE(descriptortype) == kUpb_FieldType_Message ||
127
+ field->UPB_PRIVATE(descriptortype) == kUpb_FieldType_Group;
128
+ }
129
+
130
+ // LINT.IfChange(presence_logic)
131
+
132
+ // Hasbit access ///////////////////////////////////////////////////////////////
133
+
134
+ UPB_INLINE size_t _upb_hasbit_ofs(size_t idx) { return idx / 8; }
135
+
136
+ UPB_INLINE char _upb_hasbit_mask(size_t idx) { return 1 << (idx % 8); }
137
+
138
+ UPB_INLINE bool _upb_hasbit(const upb_Message* msg, size_t idx) {
139
+ return (*UPB_PTR_AT(msg, _upb_hasbit_ofs(idx), const char) &
140
+ _upb_hasbit_mask(idx)) != 0;
141
+ }
142
+
143
+ UPB_INLINE void _upb_sethas(const upb_Message* msg, size_t idx) {
144
+ (*UPB_PTR_AT(msg, _upb_hasbit_ofs(idx), char)) |= _upb_hasbit_mask(idx);
145
+ }
146
+
147
+ UPB_INLINE void _upb_clearhas(const upb_Message* msg, size_t idx) {
148
+ (*UPB_PTR_AT(msg, _upb_hasbit_ofs(idx), char)) &= ~_upb_hasbit_mask(idx);
149
+ }
150
+
151
+ UPB_INLINE size_t _upb_Message_Hasidx(const upb_MiniTableField* f) {
152
+ UPB_ASSERT(f->presence > 0);
153
+ return f->presence;
154
+ }
155
+
156
+ UPB_INLINE bool _upb_hasbit_field(const upb_Message* msg,
157
+ const upb_MiniTableField* f) {
158
+ return _upb_hasbit(msg, _upb_Message_Hasidx(f));
159
+ }
160
+
161
+ UPB_INLINE void _upb_sethas_field(const upb_Message* msg,
162
+ const upb_MiniTableField* f) {
163
+ _upb_sethas(msg, _upb_Message_Hasidx(f));
164
+ }
165
+
166
+ // Oneof case access ///////////////////////////////////////////////////////////
167
+
168
+ UPB_INLINE size_t _upb_oneofcase_ofs(const upb_MiniTableField* f) {
169
+ UPB_ASSERT(f->presence < 0);
170
+ return ~(ptrdiff_t)f->presence;
171
+ }
172
+
173
+ UPB_INLINE uint32_t* _upb_oneofcase_field(upb_Message* msg,
174
+ const upb_MiniTableField* f) {
175
+ return UPB_PTR_AT(msg, _upb_oneofcase_ofs(f), uint32_t);
176
+ }
177
+
178
+ UPB_INLINE uint32_t _upb_getoneofcase_field(const upb_Message* msg,
179
+ const upb_MiniTableField* f) {
180
+ return *_upb_oneofcase_field((upb_Message*)msg, f);
181
+ }
182
+
183
+ // LINT.ThenChange(GoogleInternalName2)
184
+ // LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/presence.ts:presence_logic)
185
+
186
+ #ifdef __cplusplus
187
+ } /* extern "C" */
188
+ #endif
189
+
190
+ #include "upb/port/undef.inc"
191
+
192
+ #endif /* UPB_MINI_TABLE_FIELD_INTERNAL_H_ */
@@ -0,0 +1,47 @@
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_MINI_TABLE_FILE_INTERNAL_H_
29
+ #define UPB_MINI_TABLE_FILE_INTERNAL_H_
30
+
31
+ #include "upb/mini_table/types.h"
32
+
33
+ // Must be last.
34
+ #include "upb/port/def.inc"
35
+
36
+ struct upb_MiniTableFile {
37
+ const upb_MiniTable** msgs;
38
+ const upb_MiniTableEnum** enums;
39
+ const upb_MiniTableExtension** exts;
40
+ int msg_count;
41
+ int enum_count;
42
+ int ext_count;
43
+ };
44
+
45
+ #include "upb/port/undef.inc"
46
+
47
+ #endif /* UPB_MINI_TABLE_FILE_INTERNAL_H_ */