grpc 1.78.0 → 1.80.0.pre1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +22 -8
  3. data/include/grpc/credentials.h +47 -37
  4. data/include/grpc/credentials_cpp.h +39 -0
  5. data/include/grpc/event_engine/event_engine.h +8 -3
  6. data/include/grpc/grpc.h +4 -0
  7. data/include/grpc/impl/call.h +9 -0
  8. data/include/grpc/impl/channel_arg_names.h +7 -0
  9. data/include/grpc/module.modulemap +2 -0
  10. data/include/grpc/private_key_signer.h +104 -0
  11. data/include/grpc/support/port_platform.h +6 -0
  12. data/src/core/call/call_filters.h +101 -78
  13. data/src/core/call/call_spine.h +91 -68
  14. data/src/core/call/call_state.h +60 -4
  15. data/src/core/call/client_call.cc +9 -9
  16. data/src/core/call/client_call.h +1 -1
  17. data/src/core/call/metadata_batch.cc +2 -0
  18. data/src/core/call/metadata_batch.h +48 -1
  19. data/src/core/call/metadata_info.cc +35 -0
  20. data/src/core/call/metadata_info.h +2 -0
  21. data/src/core/call/simple_slice_based_metadata.h +2 -1
  22. data/src/core/channelz/channelz.cc +9 -6
  23. data/src/core/channelz/channelz.h +7 -4
  24. data/src/core/channelz/property_list.h +5 -0
  25. data/src/core/channelz/v2tov1/convert.cc +1 -1
  26. data/src/core/channelz/v2tov1/legacy_api.cc +164 -307
  27. data/src/core/client_channel/buffered_call.cc +7 -3
  28. data/src/core/client_channel/buffered_call.h +11 -5
  29. data/src/core/client_channel/client_channel.cc +106 -44
  30. data/src/core/client_channel/client_channel.h +3 -6
  31. data/src/core/client_channel/client_channel_filter.cc +90 -64
  32. data/src/core/client_channel/client_channel_filter.h +3 -6
  33. data/src/core/client_channel/client_channel_internal.h +5 -0
  34. data/src/core/client_channel/config_selector.h +17 -12
  35. data/src/core/client_channel/dynamic_filters.cc +8 -7
  36. data/src/core/client_channel/dynamic_filters.h +7 -5
  37. data/src/core/client_channel/retry_filter.cc +1 -1
  38. data/src/core/client_channel/retry_filter.h +2 -2
  39. data/src/core/client_channel/subchannel.cc +1682 -266
  40. data/src/core/client_channel/subchannel.h +411 -134
  41. data/src/core/client_channel/subchannel_stream_client.cc +22 -18
  42. data/src/core/client_channel/subchannel_stream_client.h +8 -9
  43. data/src/core/client_channel/subchannel_stream_limiter.cc +76 -0
  44. data/src/core/client_channel/subchannel_stream_limiter.h +51 -0
  45. data/src/core/config/config_vars.cc +9 -1
  46. data/src/core/config/config_vars.h +6 -0
  47. data/src/core/credentials/call/call_creds_registry.h +51 -22
  48. data/src/core/credentials/call/call_creds_registry_init.cc +86 -2
  49. data/src/core/credentials/call/external/aws_external_account_credentials.cc +2 -2
  50. data/src/core/credentials/call/external/external_account_credentials.cc +11 -4
  51. data/src/core/credentials/call/external/file_external_account_credentials.cc +2 -2
  52. data/src/core/credentials/transport/channel_creds_registry.h +71 -20
  53. data/src/core/credentials/transport/channel_creds_registry_init.cc +338 -29
  54. data/src/core/credentials/transport/ssl/ssl_credentials.cc +43 -24
  55. data/src/core/credentials/transport/ssl/ssl_credentials.h +7 -1
  56. data/src/core/credentials/transport/ssl/ssl_security_connector.cc +2 -8
  57. data/src/core/credentials/transport/ssl/ssl_security_connector.h +4 -3
  58. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.cc +25 -5
  59. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.h +7 -5
  60. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.cc +181 -109
  61. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +55 -42
  62. data/src/core/credentials/transport/tls/grpc_tls_credentials_options.cc +28 -23
  63. data/src/core/credentials/transport/tls/grpc_tls_credentials_options.h +26 -23
  64. data/src/core/credentials/transport/tls/spiffe_utils.cc +2 -2
  65. data/src/core/credentials/transport/tls/ssl_utils.cc +18 -18
  66. data/src/core/credentials/transport/tls/ssl_utils.h +12 -10
  67. data/src/core/credentials/transport/tls/tls_security_connector.cc +106 -74
  68. data/src/core/credentials/transport/tls/tls_security_connector.h +12 -8
  69. data/src/core/credentials/transport/xds/xds_credentials.cc +76 -32
  70. data/src/core/credentials/transport/xds/xds_credentials.h +4 -2
  71. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +117 -35
  72. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +42 -4
  73. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +58 -29
  74. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +19 -11
  75. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +82 -25
  76. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +28 -3
  77. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +9 -7
  78. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +1 -1
  79. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.h +7 -1
  80. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +117 -67
  81. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +2 -0
  82. data/src/core/ext/transport/chttp2/transport/flow_control.h +11 -1
  83. data/src/core/ext/transport/chttp2/transport/frame.cc +2 -15
  84. data/src/core/ext/transport/chttp2/transport/frame.h +0 -4
  85. data/src/core/ext/transport/chttp2/transport/goaway.cc +17 -2
  86. data/src/core/ext/transport/chttp2/transport/goaway.h +27 -6
  87. data/src/core/ext/transport/chttp2/transport/header_assembler.h +8 -21
  88. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +101 -40
  89. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +95 -0
  90. data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +923 -772
  91. data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +406 -423
  92. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -0
  93. data/src/core/ext/transport/chttp2/transport/http2_settings.h +8 -1
  94. data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +25 -13
  95. data/src/core/ext/transport/chttp2/transport/http2_transport.cc +71 -24
  96. data/src/core/ext/transport/chttp2/transport/http2_transport.h +25 -49
  97. data/src/core/ext/transport/chttp2/transport/http2_ztrace_collector.h +2 -2
  98. data/src/core/ext/transport/chttp2/transport/incoming_metadata_tracker.h +29 -9
  99. data/src/core/ext/transport/chttp2/transport/internal.h +6 -2
  100. data/src/core/ext/transport/chttp2/transport/keepalive.cc +14 -20
  101. data/src/core/ext/transport/chttp2/transport/keepalive.h +9 -6
  102. data/src/core/ext/transport/chttp2/transport/parsing.cc +11 -0
  103. data/src/core/ext/transport/chttp2/transport/ping_promise.cc +34 -74
  104. data/src/core/ext/transport/chttp2/transport/ping_promise.h +123 -79
  105. data/src/core/ext/transport/chttp2/transport/security_frame.h +233 -3
  106. data/src/core/ext/transport/chttp2/transport/stream.h +152 -73
  107. data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +155 -85
  108. data/src/core/ext/transport/chttp2/transport/transport_common.h +0 -5
  109. data/src/core/ext/transport/chttp2/transport/writable_streams.h +8 -7
  110. data/src/core/ext/transport/chttp2/transport/write_cycle.cc +86 -0
  111. data/src/core/ext/transport/chttp2/transport/write_cycle.h +355 -0
  112. data/src/core/ext/transport/chttp2/transport/writing.cc +31 -29
  113. data/src/core/ext/upb-gen/cel/expr/checked.upb.h +1875 -0
  114. data/src/core/ext/upb-gen/cel/expr/checked.upb_minitable.c +409 -0
  115. data/src/core/ext/upb-gen/cel/expr/checked.upb_minitable.h +56 -0
  116. data/src/core/ext/upb-gen/cel/expr/syntax.upb.h +2223 -0
  117. data/src/core/ext/upb-gen/cel/expr/syntax.upb_minitable.c +489 -0
  118. data/src/core/ext/upb-gen/cel/expr/syntax.upb_minitable.h +60 -0
  119. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +2 -1
  120. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +130 -18
  121. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +18 -13
  122. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +70 -38
  123. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +20 -17
  124. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +26 -10
  125. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +8 -7
  126. data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb.h +495 -0
  127. data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb_minitable.c +114 -0
  128. data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb_minitable.h +36 -0
  129. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +26 -10
  130. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +8 -7
  131. data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb.h +121 -0
  132. data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb_minitable.c +54 -0
  133. data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb_minitable.h +32 -0
  134. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +143 -9
  135. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +18 -6
  136. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +112 -11
  137. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +22 -9
  138. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +276 -0
  139. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +60 -5
  140. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +4 -0
  141. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +72 -0
  142. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +23 -2
  143. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +2 -0
  144. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +129 -13
  145. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +36 -10
  146. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +2 -0
  147. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +30 -0
  148. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +5 -3
  149. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +16 -0
  150. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +4 -3
  151. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +31 -0
  152. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +5 -3
  153. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +2 -1
  154. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +63 -0
  155. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +12 -7
  156. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +97 -81
  157. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +40 -23
  158. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +604 -228
  159. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +146 -100
  160. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +30 -0
  161. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +5 -3
  162. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +35 -3
  163. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +7 -4
  164. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +66 -14
  165. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +22 -11
  166. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +87 -0
  167. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +29 -2
  168. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +2 -0
  169. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +0 -1
  170. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +0 -1
  171. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +20 -4
  172. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +5 -4
  173. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +239 -60
  174. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +59 -28
  175. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +2 -0
  176. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb.h +89 -0
  177. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb_minitable.c +50 -0
  178. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb_minitable.h +32 -0
  179. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb.h +135 -0
  180. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb_minitable.c +53 -0
  181. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb_minitable.h +32 -0
  182. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb.h +105 -0
  183. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb_minitable.c +51 -0
  184. data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb_minitable.h +32 -0
  185. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +32 -0
  186. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +6 -3
  187. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +206 -0
  188. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +41 -8
  189. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +2 -0
  190. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +64 -0
  191. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +4 -3
  192. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +64 -0
  193. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +31 -5
  194. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +2 -0
  195. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +283 -14
  196. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +48 -11
  197. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +2 -0
  198. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +144 -6
  199. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +35 -7
  200. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +2 -0
  201. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +42 -21
  202. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +9 -8
  203. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb.h +164 -1
  204. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.c +37 -6
  205. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.h +2 -0
  206. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +0 -1
  207. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +0 -1
  208. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +0 -1
  209. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +0 -1
  210. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +26 -11
  211. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +8 -8
  212. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +33 -0
  213. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +14 -3
  214. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +90 -10
  215. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +18 -7
  216. data/src/core/ext/upbdefs-gen/cel/expr/checked.upbdefs.c +248 -0
  217. data/src/core/ext/upbdefs-gen/cel/expr/checked.upbdefs.h +97 -0
  218. data/src/core/ext/upbdefs-gen/cel/expr/syntax.upbdefs.c +283 -0
  219. data/src/core/ext/upbdefs-gen/cel/expr/syntax.upbdefs.h +107 -0
  220. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +213 -211
  221. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +635 -614
  222. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +1012 -1000
  223. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +276 -273
  224. data/src/core/ext/upbdefs-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upbdefs.c +152 -0
  225. data/src/core/ext/upbdefs-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upbdefs.h +47 -0
  226. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +149 -144
  227. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +367 -370
  228. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/cel.upbdefs.c +63 -0
  229. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/cel.upbdefs.h +37 -0
  230. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +297 -284
  231. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +492 -469
  232. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +74 -43
  233. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +10 -0
  234. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +60 -59
  235. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +202 -184
  236. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +5 -0
  237. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +354 -339
  238. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +5 -0
  239. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +28 -19
  240. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +30 -27
  241. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +71 -66
  242. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +94 -91
  243. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +386 -369
  244. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +60 -57
  245. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +1974 -1884
  246. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +119 -112
  247. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +62 -51
  248. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +109 -88
  249. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +54 -36
  250. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +5 -0
  251. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +78 -84
  252. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +48 -46
  253. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +1041 -984
  254. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -0
  255. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +304 -290
  256. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +94 -77
  257. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +5 -0
  258. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +246 -193
  259. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +5 -0
  260. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +37 -23
  261. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +5 -0
  262. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +5 -3
  263. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +4 -4
  264. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +4 -5
  265. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/promise.upbdefs.c +113 -87
  266. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/promise.upbdefs.h +5 -0
  267. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +5 -5
  268. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +6 -5
  269. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +5 -5
  270. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +5 -5
  271. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +5 -5
  272. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +25 -30
  273. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +14 -20
  274. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +180 -183
  275. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +56 -47
  276. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +69 -47
  277. data/src/core/filter/filter_chain.h +95 -0
  278. data/src/core/handshaker/http_connect/{http_connect_handshaker.cc → http_connect_client_handshaker.cc} +32 -31
  279. data/src/core/handshaker/http_connect/{http_connect_handshaker.h → http_connect_client_handshaker.h} +4 -4
  280. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +1 -1
  281. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.cc +1 -1
  282. data/src/core/handshaker/security/pipelined_secure_endpoint.cc +14 -13
  283. data/src/core/handshaker/security/secure_endpoint.cc +282 -68
  284. data/src/core/handshaker/security/secure_endpoint.h +0 -7
  285. data/src/core/lib/channel/channel_args.h +1 -1
  286. data/src/core/lib/channel/promise_based_filter.cc +17 -4
  287. data/src/core/lib/channel/promise_based_filter.h +3 -2
  288. data/src/core/lib/debug/trace_flags.cc +2 -0
  289. data/src/core/lib/debug/trace_flags.h +1 -0
  290. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +35 -8
  291. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +1 -2
  292. data/src/core/lib/event_engine/event_engine.cc +9 -0
  293. data/src/core/lib/event_engine/extensions/tcp_trace.h +0 -3
  294. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +2 -2
  295. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +1 -1
  296. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +34 -9
  297. data/src/core/lib/event_engine/posix_engine/posix_engine.h +24 -2
  298. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +1 -3
  299. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +141 -14
  300. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +19 -2
  301. data/src/core/lib/event_engine/posix_engine/posix_interface.h +7 -0
  302. data/src/core/lib/event_engine/posix_engine/posix_interface_posix.cc +21 -3
  303. data/src/core/lib/event_engine/posix_engine/posix_interface_windows.cc +16 -0
  304. data/src/core/lib/experiments/experiments.cc +309 -201
  305. data/src/core/lib/experiments/experiments.h +141 -80
  306. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +2 -2
  307. data/src/core/lib/iomgr/resolve_address.h +0 -2
  308. data/src/core/lib/iomgr/resolved_address.h +0 -2
  309. data/src/core/lib/iomgr/tcp_posix.cc +13 -5
  310. data/src/core/lib/iomgr/tcp_server.cc +0 -5
  311. data/src/core/lib/iomgr/tcp_server.h +0 -7
  312. data/src/core/lib/iomgr/tcp_server_posix.cc +0 -17
  313. data/src/core/lib/iomgr/tcp_server_utils_posix.h +0 -3
  314. data/src/core/lib/iomgr/tcp_server_windows.cc +12 -51
  315. data/src/core/lib/promise/all_ok.h +17 -12
  316. data/src/core/lib/promise/cancel_callback.h +12 -13
  317. data/src/core/lib/promise/detail/join_state.h +626 -0
  318. data/src/core/lib/promise/detail/promise_factory.h +14 -14
  319. data/src/core/lib/promise/for_each.h +32 -8
  320. data/src/core/lib/promise/if.h +9 -7
  321. data/src/core/lib/promise/loop.h +18 -16
  322. data/src/core/lib/promise/map.h +54 -47
  323. data/src/core/lib/promise/mpsc.h +11 -10
  324. data/src/core/lib/promise/observable.h +6 -6
  325. data/src/core/lib/promise/party.h +25 -19
  326. data/src/core/lib/promise/poll.h +5 -5
  327. data/src/core/lib/promise/prioritized_race.h +10 -7
  328. data/src/core/lib/promise/promise.h +16 -11
  329. data/src/core/lib/promise/race.h +6 -5
  330. data/src/core/lib/promise/seq.h +109 -74
  331. data/src/core/lib/promise/try_join.h +14 -6
  332. data/src/core/lib/promise/try_seq.h +76 -60
  333. data/src/core/lib/resource_quota/api.cc +7 -0
  334. data/src/core/lib/resource_quota/arena.h +1 -1
  335. data/src/core/lib/resource_quota/memory_quota.cc +4 -1
  336. data/src/core/lib/resource_quota/resource_quota.cc +2 -1
  337. data/src/core/lib/resource_quota/resource_quota.h +3 -0
  338. data/src/core/lib/resource_quota/stream_quota.cc +77 -1
  339. data/src/core/lib/resource_quota/stream_quota.h +64 -1
  340. data/src/core/lib/resource_quota/telemetry.h +1 -1
  341. data/src/core/lib/surface/call.cc +13 -0
  342. data/src/core/lib/surface/call_utils.h +58 -43
  343. data/src/core/lib/surface/channel.h +1 -4
  344. data/src/core/lib/surface/completion_queue.cc +13 -6
  345. data/src/core/lib/surface/validate_metadata.cc +20 -15
  346. data/src/core/lib/surface/validate_metadata.h +3 -1
  347. data/src/core/lib/surface/version.cc +2 -2
  348. data/src/core/lib/transport/promise_endpoint.cc +1 -1
  349. data/src/core/lib/transport/promise_endpoint.h +1 -1
  350. data/src/core/lib/transport/transport.h +5 -0
  351. data/src/core/load_balancing/health_check_client.cc +1 -15
  352. data/src/core/load_balancing/health_check_client_internal.h +0 -2
  353. data/src/core/load_balancing/oob_backend_metric.cc +1 -5
  354. data/src/core/load_balancing/oob_backend_metric_internal.h +0 -1
  355. data/src/core/load_balancing/xds/xds_cluster_impl.cc +12 -9
  356. data/src/core/plugin_registry/grpc_plugin_registry.cc +3 -2
  357. data/src/core/resolver/xds/xds_resolver.cc +162 -116
  358. data/src/core/server/server.cc +18 -1
  359. data/src/core/server/server.h +2 -0
  360. data/src/core/server/xds_server_config_fetcher.cc +4 -4
  361. data/src/core/telemetry/call_tracer.cc +87 -2
  362. data/src/core/telemetry/call_tracer.h +46 -8
  363. data/src/core/telemetry/instrument.cc +102 -40
  364. data/src/core/telemetry/instrument.h +246 -65
  365. data/src/core/tsi/fake_transport_security.cc +3 -1
  366. data/src/core/tsi/ssl_transport_security.cc +516 -137
  367. data/src/core/tsi/ssl_transport_security.h +28 -22
  368. data/src/core/tsi/ssl_transport_security_utils.cc +2 -2
  369. data/src/core/tsi/ssl_transport_security_utils.h +2 -2
  370. data/src/core/util/bitset.h +6 -0
  371. data/src/core/util/function_signature.h +3 -1
  372. data/src/core/util/http_client/httpcli_security_connector.cc +2 -1
  373. data/src/core/util/json/json_reader.cc +0 -4
  374. data/src/core/xds/grpc/certificate_provider_store.cc +2 -1
  375. data/src/core/xds/grpc/certificate_provider_store.h +3 -17
  376. data/src/core/xds/grpc/certificate_provider_store_interface.h +61 -0
  377. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +48 -0
  378. data/src/core/xds/grpc/xds_bootstrap_grpc.h +18 -0
  379. data/src/core/xds/grpc/xds_certificate_provider.cc +7 -2
  380. data/src/core/xds/grpc/xds_certificate_provider.h +13 -2
  381. data/src/core/xds/grpc/xds_client_grpc.cc +13 -6
  382. data/src/core/xds/grpc/xds_client_grpc.h +10 -7
  383. data/src/core/xds/grpc/xds_cluster.cc +18 -4
  384. data/src/core/xds/grpc/xds_cluster.h +17 -2
  385. data/src/core/xds/grpc/xds_cluster_parser.cc +36 -11
  386. data/src/core/xds/grpc/xds_common_types.cc +45 -0
  387. data/src/core/xds/grpc/xds_common_types.h +31 -0
  388. data/src/core/xds/grpc/xds_common_types_parser.cc +274 -16
  389. data/src/core/xds/grpc/xds_common_types_parser.h +12 -0
  390. data/src/core/xds/grpc/xds_http_fault_filter.cc +128 -24
  391. data/src/core/xds/grpc/xds_http_fault_filter.h +19 -10
  392. data/src/core/xds/grpc/xds_http_filter.cc +38 -0
  393. data/src/core/xds/grpc/xds_http_filter.h +70 -47
  394. data/src/core/xds/grpc/xds_http_filter_registry.cc +48 -14
  395. data/src/core/xds/grpc/xds_http_filter_registry.h +29 -15
  396. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +88 -22
  397. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +22 -11
  398. data/src/core/xds/grpc/xds_http_rbac_filter.cc +36 -20
  399. data/src/core/xds/grpc/xds_http_rbac_filter.h +19 -10
  400. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +143 -26
  401. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +19 -10
  402. data/src/core/xds/grpc/xds_listener.cc +4 -1
  403. data/src/core/xds/grpc/xds_listener.h +10 -2
  404. data/src/core/xds/grpc/xds_listener_parser.cc +23 -18
  405. data/src/core/xds/grpc/xds_matcher.cc +40 -5
  406. data/src/core/xds/grpc/xds_matcher.h +13 -0
  407. data/src/core/xds/grpc/xds_matcher_action.h +1 -1
  408. data/src/core/xds/grpc/xds_matcher_parse.cc +60 -40
  409. data/src/core/xds/grpc/xds_matcher_parse.h +2 -1
  410. data/src/core/xds/grpc/xds_route_config.cc +12 -1
  411. data/src/core/xds/grpc/xds_route_config.h +15 -2
  412. data/src/core/xds/grpc/xds_route_config_parser.cc +11 -5
  413. data/src/core/xds/grpc/xds_routing.cc +181 -6
  414. data/src/core/xds/grpc/xds_routing.h +57 -0
  415. data/src/core/xds/grpc/xds_server_grpc.cc +55 -43
  416. data/src/core/xds/grpc/xds_server_grpc.h +13 -6
  417. data/src/core/xds/grpc/xds_server_grpc_interface.h +3 -2
  418. data/src/core/xds/grpc/xds_transport_grpc.cc +12 -6
  419. data/src/core/xds/grpc/xds_transport_grpc.h +5 -1
  420. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +12 -8
  421. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +18 -12
  422. data/src/ruby/lib/grpc/grpc.rb +7 -9
  423. data/src/ruby/lib/grpc/version.rb +1 -1
  424. data/src/ruby/pb/generate_proto_ruby.sh +1 -1
  425. data/src/ruby/spec/client_server_spec.rb +1 -1
  426. data/src/ruby/spec/generic/rpc_server_pool_spec.rb +1 -1
  427. data/src/ruby/spec/generic/rpc_server_spec.rb +3 -4
  428. data/src/ruby/spec/spec_helper.rb +1 -1
  429. metadata +64 -14
  430. data/src/core/ext/transport/chttp2/transport/security_frame.cc +0 -31
  431. data/src/core/handshaker/security/legacy_secure_endpoint.cc +0 -597
@@ -13,8 +13,10 @@
13
13
 
14
14
  #include "envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h"
15
15
 
16
+ #include "envoy/config/common/matcher/v3/matcher.upb_minitable.h"
16
17
  #include "envoy/config/core/v3/extension.upb_minitable.h"
17
18
  #include "envoy/config/core/v3/protocol.upb_minitable.h"
19
+ #include "envoy/config/route/v3/route_components.upb_minitable.h"
18
20
  #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h"
19
21
  #include "udpa/annotations/status.upb_minitable.h"
20
22
  #include "validate/validate.upb_minitable.h"
@@ -30,6 +32,8 @@ typedef struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions { upb_Mess
30
32
  typedef struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_ExplicitHttpConfig { upb_Message UPB_PRIVATE(base); } envoy_extensions_upstreams_http_v3_HttpProtocolOptions_ExplicitHttpConfig;
31
33
  typedef struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDownstreamHttpConfig { upb_Message UPB_PRIVATE(base); } envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDownstreamHttpConfig;
32
34
  typedef struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_AutoHttpConfig { upb_Message UPB_PRIVATE(base); } envoy_extensions_upstreams_http_v3_HttpProtocolOptions_AutoHttpConfig;
35
+ typedef struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection { upb_Message UPB_PRIVATE(base); } envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection;
36
+ struct envoy_config_common_matcher_v3_MatchPredicate;
33
37
  struct envoy_config_core_v3_AlternateProtocolsCacheOptions;
34
38
  struct envoy_config_core_v3_Http1ProtocolOptions;
35
39
  struct envoy_config_core_v3_Http2ProtocolOptions;
@@ -37,6 +41,9 @@ struct envoy_config_core_v3_Http3ProtocolOptions;
37
41
  struct envoy_config_core_v3_HttpProtocolOptions;
38
42
  struct envoy_config_core_v3_TypedExtensionConfig;
39
43
  struct envoy_config_core_v3_UpstreamHttpProtocolOptions;
44
+ struct envoy_config_route_v3_RetryPolicy;
45
+ struct envoy_config_route_v3_RouteAction_HashPolicy;
46
+ struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy;
40
47
  struct envoy_extensions_filters_network_http_connection_manager_v3_HttpFilter;
41
48
 
42
49
 
@@ -84,12 +91,12 @@ typedef enum {
84
91
  envoy_extensions_upstreams_http_v3_HttpProtocolOptions_upstream_protocol_options_NOT_SET = 0
85
92
  } envoy_extensions_upstreams_http_v3_HttpProtocolOptions_upstream_protocol_options_oneofcases;
86
93
  UPB_INLINE envoy_extensions_upstreams_http_v3_HttpProtocolOptions_upstream_protocol_options_oneofcases envoy_extensions_upstreams_http_v3_HttpProtocolOptions_upstream_protocol_options_case(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
87
- const upb_MiniTableField field = {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
94
+ const upb_MiniTableField field = {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
88
95
  return (envoy_extensions_upstreams_http_v3_HttpProtocolOptions_upstream_protocol_options_oneofcases)upb_Message_WhichOneofFieldNumber(
89
96
  UPB_UPCAST(msg), &field);
90
97
  }
91
98
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_upstream_protocol_options(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
92
- const upb_MiniTableField field = {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
99
+ const upb_MiniTableField field = {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
93
100
  upb_Message_ClearOneof(UPB_UPCAST(msg), &envoy__extensions__upstreams__http__v3__HttpProtocolOptions_msg_init, &field);
94
101
  }
95
102
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_common_http_protocol_options(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
@@ -127,54 +134,54 @@ UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_upstr
127
134
  return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
128
135
  }
129
136
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_explicit_http_config(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
130
- const upb_MiniTableField field = {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
137
+ const upb_MiniTableField field = {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
131
138
  upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
132
139
  }
133
140
  UPB_INLINE const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_ExplicitHttpConfig* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_explicit_http_config(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
134
141
  const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_ExplicitHttpConfig* default_val = NULL;
135
142
  const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_ExplicitHttpConfig* ret;
136
- const upb_MiniTableField field = {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
143
+ const upb_MiniTableField field = {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
137
144
  UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__ExplicitHttpConfig_msg_init);
138
145
  _upb_Message_GetNonExtensionField(UPB_UPCAST(msg), &field,
139
146
  &default_val, &ret);
140
147
  return ret;
141
148
  }
142
149
  UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_explicit_http_config(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
143
- const upb_MiniTableField field = {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
150
+ const upb_MiniTableField field = {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
144
151
  return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
145
152
  }
146
153
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_use_downstream_protocol_config(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
147
- const upb_MiniTableField field = {4, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
154
+ const upb_MiniTableField field = {4, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
148
155
  upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
149
156
  }
150
157
  UPB_INLINE const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDownstreamHttpConfig* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_use_downstream_protocol_config(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
151
158
  const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDownstreamHttpConfig* default_val = NULL;
152
159
  const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDownstreamHttpConfig* ret;
153
- const upb_MiniTableField field = {4, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
160
+ const upb_MiniTableField field = {4, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
154
161
  UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__UseDownstreamHttpConfig_msg_init);
155
162
  _upb_Message_GetNonExtensionField(UPB_UPCAST(msg), &field,
156
163
  &default_val, &ret);
157
164
  return ret;
158
165
  }
159
166
  UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_use_downstream_protocol_config(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
160
- const upb_MiniTableField field = {4, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
167
+ const upb_MiniTableField field = {4, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
161
168
  return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
162
169
  }
163
170
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_auto_config(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
164
- const upb_MiniTableField field = {5, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
171
+ const upb_MiniTableField field = {5, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
165
172
  upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
166
173
  }
167
174
  UPB_INLINE const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_AutoHttpConfig* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_auto_config(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
168
175
  const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_AutoHttpConfig* default_val = NULL;
169
176
  const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_AutoHttpConfig* ret;
170
- const upb_MiniTableField field = {5, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
177
+ const upb_MiniTableField field = {5, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
171
178
  UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init);
172
179
  _upb_Message_GetNonExtensionField(UPB_UPCAST(msg), &field,
173
180
  &default_val, &ret);
174
181
  return ret;
175
182
  }
176
183
  UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_auto_config(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
177
- const upb_MiniTableField field = {5, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
184
+ const upb_MiniTableField field = {5, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
178
185
  return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
179
186
  }
180
187
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_http_filters(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
@@ -229,6 +236,110 @@ UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_heade
229
236
  const upb_MiniTableField field = {7, UPB_SIZE(24, 40), 66, 6, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
230
237
  return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
231
238
  }
239
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_outlier_detection(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
240
+ const upb_MiniTableField field = {8, UPB_SIZE(28, 48), 67, 7, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
241
+ upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
242
+ }
243
+ UPB_INLINE const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_outlier_detection(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
244
+ const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* default_val = NULL;
245
+ const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* ret;
246
+ const upb_MiniTableField field = {8, UPB_SIZE(28, 48), 67, 7, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
247
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init);
248
+ _upb_Message_GetNonExtensionField(UPB_UPCAST(msg), &field,
249
+ &default_val, &ret);
250
+ return ret;
251
+ }
252
+ UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_outlier_detection(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
253
+ const upb_MiniTableField field = {8, UPB_SIZE(28, 48), 67, 7, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
254
+ return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
255
+ }
256
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_request_mirror_policies(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
257
+ const upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
258
+ upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
259
+ }
260
+ UPB_INLINE const struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy* const* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_request_mirror_policies(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size) {
261
+ const upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
262
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init);
263
+ const upb_Array* arr = upb_Message_GetArray(UPB_UPCAST(msg), &field);
264
+ if (arr) {
265
+ if (size) *size = arr->UPB_PRIVATE(size);
266
+ return (const struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy* const*)upb_Array_DataPtr(arr);
267
+ } else {
268
+ if (size) *size = 0;
269
+ return NULL;
270
+ }
271
+ }
272
+ UPB_INLINE const upb_Array* _envoy_extensions_upstreams_http_v3_HttpProtocolOptions_request_mirror_policies_upb_array(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size) {
273
+ const upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
274
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init);
275
+ const upb_Array* arr = upb_Message_GetArray(UPB_UPCAST(msg), &field);
276
+ if (size) {
277
+ *size = arr ? arr->UPB_PRIVATE(size) : 0;
278
+ }
279
+ return arr;
280
+ }
281
+ UPB_INLINE upb_Array* _envoy_extensions_upstreams_http_v3_HttpProtocolOptions_request_mirror_policies_mutable_upb_array(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size, upb_Arena* arena) {
282
+ const upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
283
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init);
284
+ upb_Array* arr = upb_Message_GetOrCreateMutableArray(UPB_UPCAST(msg),
285
+ &field, arena);
286
+ if (size) {
287
+ *size = arr ? arr->UPB_PRIVATE(size) : 0;
288
+ }
289
+ return arr;
290
+ }
291
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_hash_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
292
+ const upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
293
+ upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
294
+ }
295
+ UPB_INLINE const struct envoy_config_route_v3_RouteAction_HashPolicy* const* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_hash_policy(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size) {
296
+ const upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
297
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__HashPolicy_msg_init);
298
+ const upb_Array* arr = upb_Message_GetArray(UPB_UPCAST(msg), &field);
299
+ if (arr) {
300
+ if (size) *size = arr->UPB_PRIVATE(size);
301
+ return (const struct envoy_config_route_v3_RouteAction_HashPolicy* const*)upb_Array_DataPtr(arr);
302
+ } else {
303
+ if (size) *size = 0;
304
+ return NULL;
305
+ }
306
+ }
307
+ UPB_INLINE const upb_Array* _envoy_extensions_upstreams_http_v3_HttpProtocolOptions_hash_policy_upb_array(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size) {
308
+ const upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
309
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__HashPolicy_msg_init);
310
+ const upb_Array* arr = upb_Message_GetArray(UPB_UPCAST(msg), &field);
311
+ if (size) {
312
+ *size = arr ? arr->UPB_PRIVATE(size) : 0;
313
+ }
314
+ return arr;
315
+ }
316
+ UPB_INLINE upb_Array* _envoy_extensions_upstreams_http_v3_HttpProtocolOptions_hash_policy_mutable_upb_array(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size, upb_Arena* arena) {
317
+ const upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
318
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__HashPolicy_msg_init);
319
+ upb_Array* arr = upb_Message_GetOrCreateMutableArray(UPB_UPCAST(msg),
320
+ &field, arena);
321
+ if (size) {
322
+ *size = arr ? arr->UPB_PRIVATE(size) : 0;
323
+ }
324
+ return arr;
325
+ }
326
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_clear_retry_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
327
+ const upb_MiniTableField field = {11, UPB_SIZE(40, 72), 68, 10, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
328
+ upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
329
+ }
330
+ UPB_INLINE const struct envoy_config_route_v3_RetryPolicy* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_retry_policy(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
331
+ const struct envoy_config_route_v3_RetryPolicy* default_val = NULL;
332
+ const struct envoy_config_route_v3_RetryPolicy* ret;
333
+ const upb_MiniTableField field = {11, UPB_SIZE(40, 72), 68, 10, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
334
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RetryPolicy_msg_init);
335
+ _upb_Message_GetNonExtensionField(UPB_UPCAST(msg), &field,
336
+ &default_val, &ret);
337
+ return ret;
338
+ }
339
+ UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_has_retry_policy(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg) {
340
+ const upb_MiniTableField field = {11, UPB_SIZE(40, 72), 68, 10, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
341
+ return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
342
+ }
232
343
 
233
344
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_common_http_protocol_options(envoy_extensions_upstreams_http_v3_HttpProtocolOptions *msg, struct envoy_config_core_v3_HttpProtocolOptions* value) {
234
345
  const upb_MiniTableField field = {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
@@ -257,7 +368,7 @@ UPB_INLINE struct envoy_config_core_v3_UpstreamHttpProtocolOptions* envoy_extens
257
368
  return sub;
258
369
  }
259
370
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_explicit_http_config(envoy_extensions_upstreams_http_v3_HttpProtocolOptions *msg, envoy_extensions_upstreams_http_v3_HttpProtocolOptions_ExplicitHttpConfig* value) {
260
- const upb_MiniTableField field = {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
371
+ const upb_MiniTableField field = {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
261
372
  UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__ExplicitHttpConfig_msg_init);
262
373
  upb_Message_SetBaseField((upb_Message *)msg, &field, &value);
263
374
  }
@@ -270,7 +381,7 @@ UPB_INLINE struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_Explici
270
381
  return sub;
271
382
  }
272
383
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_use_downstream_protocol_config(envoy_extensions_upstreams_http_v3_HttpProtocolOptions *msg, envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDownstreamHttpConfig* value) {
273
- const upb_MiniTableField field = {4, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
384
+ const upb_MiniTableField field = {4, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
274
385
  UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__UseDownstreamHttpConfig_msg_init);
275
386
  upb_Message_SetBaseField((upb_Message *)msg, &field, &value);
276
387
  }
@@ -283,7 +394,7 @@ UPB_INLINE struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_UseDown
283
394
  return sub;
284
395
  }
285
396
  UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_auto_config(envoy_extensions_upstreams_http_v3_HttpProtocolOptions *msg, envoy_extensions_upstreams_http_v3_HttpProtocolOptions_AutoHttpConfig* value) {
286
- const upb_MiniTableField field = {5, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
397
+ const upb_MiniTableField field = {5, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
287
398
  UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init);
288
399
  upb_Message_SetBaseField((upb_Message *)msg, &field, &value);
289
400
  }
@@ -340,6 +451,96 @@ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_extensions_up
340
451
  }
341
452
  return sub;
342
453
  }
454
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_outlier_detection(envoy_extensions_upstreams_http_v3_HttpProtocolOptions *msg, envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* value) {
455
+ const upb_MiniTableField field = {8, UPB_SIZE(28, 48), 67, 7, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
456
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init);
457
+ upb_Message_SetBaseField((upb_Message *)msg, &field, &value);
458
+ }
459
+ UPB_INLINE struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_mutable_outlier_detection(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, upb_Arena* arena) {
460
+ struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* sub = (struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection*)envoy_extensions_upstreams_http_v3_HttpProtocolOptions_outlier_detection(msg);
461
+ if (sub == NULL) {
462
+ sub = (struct envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection*)_upb_Message_New(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init, arena);
463
+ if (sub) envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_outlier_detection(msg, sub);
464
+ }
465
+ return sub;
466
+ }
467
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy** envoy_extensions_upstreams_http_v3_HttpProtocolOptions_mutable_request_mirror_policies(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size) {
468
+ upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
469
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init);
470
+ upb_Array* arr = upb_Message_GetMutableArray(UPB_UPCAST(msg), &field);
471
+ if (arr) {
472
+ if (size) *size = arr->UPB_PRIVATE(size);
473
+ return (struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy**)upb_Array_MutableDataPtr(arr);
474
+ } else {
475
+ if (size) *size = 0;
476
+ return NULL;
477
+ }
478
+ }
479
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy** envoy_extensions_upstreams_http_v3_HttpProtocolOptions_resize_request_mirror_policies(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t size, upb_Arena* arena) {
480
+ upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
481
+ return (struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy**)upb_Message_ResizeArrayUninitialized(UPB_UPCAST(msg),
482
+ &field, size, arena);
483
+ }
484
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_add_request_mirror_policies(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, upb_Arena* arena) {
485
+ upb_MiniTableField field = {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
486
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init);
487
+ upb_Array* arr = upb_Message_GetOrCreateMutableArray(
488
+ UPB_UPCAST(msg), &field, arena);
489
+ if (!arr || !UPB_PRIVATE(_upb_Array_ResizeUninitialized)(
490
+ arr, arr->UPB_PRIVATE(size) + 1, arena)) {
491
+ return NULL;
492
+ }
493
+ struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy* sub = (struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy*)_upb_Message_New(&envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init, arena);
494
+ if (!arr || !sub) return NULL;
495
+ UPB_PRIVATE(_upb_Array_Set)
496
+ (arr, arr->UPB_PRIVATE(size) - 1, &sub, sizeof(sub));
497
+ return sub;
498
+ }
499
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy** envoy_extensions_upstreams_http_v3_HttpProtocolOptions_mutable_hash_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t* size) {
500
+ upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
501
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__HashPolicy_msg_init);
502
+ upb_Array* arr = upb_Message_GetMutableArray(UPB_UPCAST(msg), &field);
503
+ if (arr) {
504
+ if (size) *size = arr->UPB_PRIVATE(size);
505
+ return (struct envoy_config_route_v3_RouteAction_HashPolicy**)upb_Array_MutableDataPtr(arr);
506
+ } else {
507
+ if (size) *size = 0;
508
+ return NULL;
509
+ }
510
+ }
511
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy** envoy_extensions_upstreams_http_v3_HttpProtocolOptions_resize_hash_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, size_t size, upb_Arena* arena) {
512
+ upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
513
+ return (struct envoy_config_route_v3_RouteAction_HashPolicy**)upb_Message_ResizeArrayUninitialized(UPB_UPCAST(msg),
514
+ &field, size, arena);
515
+ }
516
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_add_hash_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, upb_Arena* arena) {
517
+ upb_MiniTableField field = {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
518
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RouteAction__HashPolicy_msg_init);
519
+ upb_Array* arr = upb_Message_GetOrCreateMutableArray(
520
+ UPB_UPCAST(msg), &field, arena);
521
+ if (!arr || !UPB_PRIVATE(_upb_Array_ResizeUninitialized)(
522
+ arr, arr->UPB_PRIVATE(size) + 1, arena)) {
523
+ return NULL;
524
+ }
525
+ struct envoy_config_route_v3_RouteAction_HashPolicy* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy*)_upb_Message_New(&envoy__config__route__v3__RouteAction__HashPolicy_msg_init, arena);
526
+ if (!arr || !sub) return NULL;
527
+ UPB_PRIVATE(_upb_Array_Set)
528
+ (arr, arr->UPB_PRIVATE(size) - 1, &sub, sizeof(sub));
529
+ return sub;
530
+ }
531
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_retry_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions *msg, struct envoy_config_route_v3_RetryPolicy* value) {
532
+ const upb_MiniTableField field = {11, UPB_SIZE(40, 72), 68, 10, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
533
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__route__v3__RetryPolicy_msg_init);
534
+ upb_Message_SetBaseField((upb_Message *)msg, &field, &value);
535
+ }
536
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_mutable_retry_policy(envoy_extensions_upstreams_http_v3_HttpProtocolOptions* msg, upb_Arena* arena) {
537
+ struct envoy_config_route_v3_RetryPolicy* sub = (struct envoy_config_route_v3_RetryPolicy*)envoy_extensions_upstreams_http_v3_HttpProtocolOptions_retry_policy(msg);
538
+ if (sub == NULL) {
539
+ sub = (struct envoy_config_route_v3_RetryPolicy*)_upb_Message_New(&envoy__config__route__v3__RetryPolicy_msg_init, arena);
540
+ if (sub) envoy_extensions_upstreams_http_v3_HttpProtocolOptions_set_retry_policy(msg, sub);
541
+ }
542
+ return sub;
543
+ }
343
544
 
344
545
  /* envoy.extensions.upstreams.http.v3.HttpProtocolOptions.ExplicitHttpConfig */
345
546
 
@@ -770,6 +971,74 @@ UPB_INLINE struct envoy_config_core_v3_AlternateProtocolsCacheOptions* envoy_ext
770
971
  return sub;
771
972
  }
772
973
 
974
+ /* envoy.extensions.upstreams.http.v3.HttpProtocolOptions.OutlierDetection */
975
+
976
+ UPB_INLINE envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_new(upb_Arena* arena) {
977
+ return (envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection*)_upb_Message_New(&envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init, arena);
978
+ }
979
+ UPB_INLINE envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_parse(const char* buf, size_t size, upb_Arena* arena) {
980
+ envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* ret = envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_new(arena);
981
+ if (!ret) return NULL;
982
+ if (upb_Decode(buf, size, UPB_UPCAST(ret), &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init, NULL, 0, arena) !=
983
+ kUpb_DecodeStatus_Ok) {
984
+ return NULL;
985
+ }
986
+ return ret;
987
+ }
988
+ UPB_INLINE envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_parse_ex(const char* buf, size_t size,
989
+ const upb_ExtensionRegistry* extreg,
990
+ int options, upb_Arena* arena) {
991
+ envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* ret = envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_new(arena);
992
+ if (!ret) return NULL;
993
+ if (upb_Decode(buf, size, UPB_UPCAST(ret), &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init, extreg, options,
994
+ arena) != kUpb_DecodeStatus_Ok) {
995
+ return NULL;
996
+ }
997
+ return ret;
998
+ }
999
+ UPB_INLINE char* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_serialize(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* msg, upb_Arena* arena, size_t* len) {
1000
+ char* ptr;
1001
+ (void)upb_Encode(UPB_UPCAST(msg), &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init, 0, arena, &ptr, len);
1002
+ return ptr;
1003
+ }
1004
+ UPB_INLINE char* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_serialize_ex(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* msg, int options,
1005
+ upb_Arena* arena, size_t* len) {
1006
+ char* ptr;
1007
+ (void)upb_Encode(UPB_UPCAST(msg), &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init, options, arena, &ptr, len);
1008
+ return ptr;
1009
+ }
1010
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_clear_error_matcher(envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* msg) {
1011
+ const upb_MiniTableField field = {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
1012
+ upb_Message_ClearBaseField(UPB_UPCAST(msg), &field);
1013
+ }
1014
+ UPB_INLINE const struct envoy_config_common_matcher_v3_MatchPredicate* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_error_matcher(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* msg) {
1015
+ const struct envoy_config_common_matcher_v3_MatchPredicate* default_val = NULL;
1016
+ const struct envoy_config_common_matcher_v3_MatchPredicate* ret;
1017
+ const upb_MiniTableField field = {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
1018
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__common__matcher__v3__MatchPredicate_msg_init);
1019
+ _upb_Message_GetNonExtensionField(UPB_UPCAST(msg), &field,
1020
+ &default_val, &ret);
1021
+ return ret;
1022
+ }
1023
+ UPB_INLINE bool envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_has_error_matcher(const envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* msg) {
1024
+ const upb_MiniTableField field = {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
1025
+ return upb_Message_HasBaseField(UPB_UPCAST(msg), &field);
1026
+ }
1027
+
1028
+ UPB_INLINE void envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_set_error_matcher(envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection *msg, struct envoy_config_common_matcher_v3_MatchPredicate* value) {
1029
+ const upb_MiniTableField field = {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)};
1030
+ UPB_PRIVATE(_upb_MiniTable_StrongReference)(&envoy__config__common__matcher__v3__MatchPredicate_msg_init);
1031
+ upb_Message_SetBaseField((upb_Message *)msg, &field, &value);
1032
+ }
1033
+ UPB_INLINE struct envoy_config_common_matcher_v3_MatchPredicate* envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_mutable_error_matcher(envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection* msg, upb_Arena* arena) {
1034
+ struct envoy_config_common_matcher_v3_MatchPredicate* sub = (struct envoy_config_common_matcher_v3_MatchPredicate*)envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_error_matcher(msg);
1035
+ if (sub == NULL) {
1036
+ sub = (struct envoy_config_common_matcher_v3_MatchPredicate*)_upb_Message_New(&envoy__config__common__matcher__v3__MatchPredicate_msg_init, arena);
1037
+ if (sub) envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection_set_error_matcher(msg, sub);
1038
+ }
1039
+ return sub;
1040
+ }
1041
+
773
1042
  #ifdef __cplusplus
774
1043
  } /* extern "C" */
775
1044
  #endif
@@ -9,8 +9,10 @@
9
9
  #include <stddef.h>
10
10
  #include "upb/generated_code_support.h"
11
11
  #include "envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h"
12
+ #include "envoy/config/common/matcher/v3/matcher.upb_minitable.h"
12
13
  #include "envoy/config/core/v3/extension.upb_minitable.h"
13
14
  #include "envoy/config/core/v3/protocol.upb_minitable.h"
15
+ #include "envoy/config/route/v3/route_components.upb_minitable.h"
14
16
  #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h"
15
17
  #include "udpa/annotations/status.upb_minitable.h"
16
18
  #include "validate/validate.upb_minitable.h"
@@ -19,7 +21,7 @@
19
21
  #include "upb/port/def.inc"
20
22
 
21
23
  extern const struct upb_MiniTable UPB_PRIVATE(_kUpb_MiniTable_StaticallyTreeShaken);
22
- static const upb_MiniTableSubInternal envoy_extensions_upstreams_http_v3_HttpProtocolOptions__submsgs[7] = {
24
+ static const upb_MiniTableSubInternal envoy_extensions_upstreams_http_v3_HttpProtocolOptions__submsgs[11] = {
23
25
  {.UPB_PRIVATE(submsg) = &envoy__config__core__v3__HttpProtocolOptions_msg_init_ptr},
24
26
  {.UPB_PRIVATE(submsg) = &envoy__config__core__v3__UpstreamHttpProtocolOptions_msg_init_ptr},
25
27
  {.UPB_PRIVATE(submsg) = &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__ExplicitHttpConfig_msg_init_ptr},
@@ -27,22 +29,30 @@ static const upb_MiniTableSubInternal envoy_extensions_upstreams_http_v3_HttpPro
27
29
  {.UPB_PRIVATE(submsg) = &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init_ptr},
28
30
  {.UPB_PRIVATE(submsg) = &envoy__extensions__filters__network__http_0connection_0manager__v3__HttpFilter_msg_init_ptr},
29
31
  {.UPB_PRIVATE(submsg) = &envoy__config__core__v3__TypedExtensionConfig_msg_init_ptr},
32
+ {.UPB_PRIVATE(submsg) = &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init_ptr},
33
+ {.UPB_PRIVATE(submsg) = &envoy__config__route__v3__RouteAction__RequestMirrorPolicy_msg_init_ptr},
34
+ {.UPB_PRIVATE(submsg) = &envoy__config__route__v3__RouteAction__HashPolicy_msg_init_ptr},
35
+ {.UPB_PRIVATE(submsg) = &envoy__config__route__v3__RetryPolicy_msg_init_ptr},
30
36
  };
31
37
 
32
- static const upb_MiniTableField envoy_extensions_upstreams_http_v3_HttpProtocolOptions__fields[7] = {
38
+ static const upb_MiniTableField envoy_extensions_upstreams_http_v3_HttpProtocolOptions__fields[11] = {
33
39
  {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
34
40
  {2, UPB_SIZE(16, 24), 65, 1, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
35
- {3, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
36
- {4, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
37
- {5, UPB_SIZE(32, 48), UPB_SIZE(-29, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
41
+ {3, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 2, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
42
+ {4, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 3, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
43
+ {5, UPB_SIZE(48, 80), UPB_SIZE(-45, -13), 4, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
38
44
  {6, UPB_SIZE(20, 32), 0, 5, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
39
45
  {7, UPB_SIZE(24, 40), 66, 6, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
46
+ {8, UPB_SIZE(28, 48), 67, 7, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
47
+ {9, UPB_SIZE(32, 56), 0, 8, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
48
+ {10, UPB_SIZE(36, 64), 0, 9, 11, (int)kUpb_FieldMode_Array | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
49
+ {11, UPB_SIZE(40, 72), 68, 10, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
40
50
  };
41
51
 
42
52
  const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolOptions_msg_init = {
43
53
  &envoy_extensions_upstreams_http_v3_HttpProtocolOptions__submsgs[0],
44
54
  &envoy_extensions_upstreams_http_v3_HttpProtocolOptions__fields[0],
45
- UPB_SIZE(40, 56), 7, kUpb_ExtMode_NonExtendable, 7, UPB_FASTTABLE_MASK(56), 0,
55
+ UPB_SIZE(56, 88), 11, kUpb_ExtMode_NonExtendable, 11, UPB_FASTTABLE_MASK(120), 0,
46
56
  #ifdef UPB_TRACING_ENABLED
47
57
  "envoy.extensions.upstreams.http.v3.HttpProtocolOptions",
48
58
  #endif
@@ -50,11 +60,19 @@ const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolOptions_
50
60
  {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
51
61
  {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
52
62
  {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
53
- {0x0030000c0302001a, &upb_pom_1bt_max64b},
54
- {0x0030000c04030022, &upb_pom_1bt_max64b},
55
- {0x0030000c0504002a, &upb_pom_1bt_max64b},
63
+ {0x0050000c0302001a, &upb_pom_1bt_max64b},
64
+ {0x0050000c04030022, &upb_pom_1bt_max64b},
65
+ {0x0050000c0504002a, &upb_pom_1bt_max64b},
56
66
  {0x002000003f050032, &upb_prm_1bt_maxmaxb},
57
67
  {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
68
+ {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
69
+ {0x003800003f08004a, &upb_prm_1bt_maxmaxb},
70
+ {0x004000003f090052, &upb_prm_1bt_maxmaxb},
71
+ {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
72
+ {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
73
+ {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
74
+ {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
75
+ {0x0000000000000000, &_upb_FastDecoder_DecodeGeneric},
58
76
  })
59
77
  };
60
78
 
@@ -133,18 +151,37 @@ const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolOptions_
133
151
  };
134
152
 
135
153
  const upb_MiniTable* envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init_ptr = &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init;
136
- static const upb_MiniTable *messages_layout[4] = {
154
+ static const upb_MiniTableSubInternal envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection__submsgs[1] = {
155
+ {.UPB_PRIVATE(submsg) = &envoy__config__common__matcher__v3__MatchPredicate_msg_init_ptr},
156
+ };
157
+
158
+ static const upb_MiniTableField envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection__fields[1] = {
159
+ {1, UPB_SIZE(12, 16), 64, 0, 11, (int)kUpb_FieldMode_Scalar | ((int)UPB_SIZE(kUpb_FieldRep_4Byte, kUpb_FieldRep_8Byte) << kUpb_FieldRep_Shift)},
160
+ };
161
+
162
+ const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init = {
163
+ &envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection__submsgs[0],
164
+ &envoy_extensions_upstreams_http_v3_HttpProtocolOptions_OutlierDetection__fields[0],
165
+ UPB_SIZE(16, 24), 1, kUpb_ExtMode_NonExtendable, 1, UPB_FASTTABLE_MASK(255), 0,
166
+ #ifdef UPB_TRACING_ENABLED
167
+ "envoy.extensions.upstreams.http.v3.HttpProtocolOptions.OutlierDetection",
168
+ #endif
169
+ };
170
+
171
+ const upb_MiniTable* envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init_ptr = &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init;
172
+ static const upb_MiniTable *messages_layout[5] = {
137
173
  &envoy__extensions__upstreams__http__v3__HttpProtocolOptions_msg_init,
138
174
  &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__ExplicitHttpConfig_msg_init,
139
175
  &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__UseDownstreamHttpConfig_msg_init,
140
176
  &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init,
177
+ &envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init,
141
178
  };
142
179
 
143
180
  const upb_MiniTableFile envoy_extensions_upstreams_http_v3_http_protocol_options_proto_upb_file_layout = {
144
181
  messages_layout,
145
182
  NULL,
146
183
  NULL,
147
- 4,
184
+ 5,
148
185
  0,
149
186
  0,
150
187
  };
@@ -26,6 +26,8 @@ extern const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolO
26
26
  extern const upb_MiniTable* envoy__extensions__upstreams__http__v3__HttpProtocolOptions__UseDownstreamHttpConfig_msg_init_ptr;
27
27
  extern const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init;
28
28
  extern const upb_MiniTable* envoy__extensions__upstreams__http__v3__HttpProtocolOptions__AutoHttpConfig_msg_init_ptr;
29
+ extern const upb_MiniTable envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init;
30
+ extern const upb_MiniTable* envoy__extensions__upstreams__http__v3__HttpProtocolOptions__OutlierDetection_msg_init_ptr;
29
31
 
30
32
  extern const upb_MiniTableFile envoy_extensions_upstreams_http_v3_http_protocol_options_proto_upb_file_layout;
31
33