gitlab-grpc 1.42.1.gitlab

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2288) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +1 -0
  3. data/Makefile +3004 -0
  4. data/etc/roots.pem +4337 -0
  5. data/include/grpc/byte_buffer.h +27 -0
  6. data/include/grpc/byte_buffer_reader.h +26 -0
  7. data/include/grpc/census.h +40 -0
  8. data/include/grpc/compression.h +75 -0
  9. data/include/grpc/event_engine/README.md +38 -0
  10. data/include/grpc/event_engine/endpoint_config.h +43 -0
  11. data/include/grpc/event_engine/event_engine.h +375 -0
  12. data/include/grpc/event_engine/internal/memory_allocator_impl.h +98 -0
  13. data/include/grpc/event_engine/memory_allocator.h +210 -0
  14. data/include/grpc/event_engine/port.h +39 -0
  15. data/include/grpc/fork.h +26 -0
  16. data/include/grpc/grpc.h +579 -0
  17. data/include/grpc/grpc_cronet.h +38 -0
  18. data/include/grpc/grpc_posix.h +62 -0
  19. data/include/grpc/grpc_security.h +1142 -0
  20. data/include/grpc/grpc_security_constants.h +165 -0
  21. data/include/grpc/impl/codegen/README.md +22 -0
  22. data/include/grpc/impl/codegen/atm.h +97 -0
  23. data/include/grpc/impl/codegen/atm_gcc_atomic.h +93 -0
  24. data/include/grpc/impl/codegen/atm_gcc_sync.h +87 -0
  25. data/include/grpc/impl/codegen/atm_windows.h +134 -0
  26. data/include/grpc/impl/codegen/byte_buffer.h +103 -0
  27. data/include/grpc/impl/codegen/byte_buffer_reader.h +44 -0
  28. data/include/grpc/impl/codegen/compression_types.h +110 -0
  29. data/include/grpc/impl/codegen/connectivity_state.h +46 -0
  30. data/include/grpc/impl/codegen/fork.h +50 -0
  31. data/include/grpc/impl/codegen/gpr_slice.h +71 -0
  32. data/include/grpc/impl/codegen/gpr_types.h +61 -0
  33. data/include/grpc/impl/codegen/grpc_types.h +813 -0
  34. data/include/grpc/impl/codegen/log.h +112 -0
  35. data/include/grpc/impl/codegen/port_platform.h +719 -0
  36. data/include/grpc/impl/codegen/propagation_bits.h +54 -0
  37. data/include/grpc/impl/codegen/slice.h +129 -0
  38. data/include/grpc/impl/codegen/status.h +156 -0
  39. data/include/grpc/impl/codegen/sync.h +68 -0
  40. data/include/grpc/impl/codegen/sync_abseil.h +38 -0
  41. data/include/grpc/impl/codegen/sync_custom.h +40 -0
  42. data/include/grpc/impl/codegen/sync_generic.h +51 -0
  43. data/include/grpc/impl/codegen/sync_posix.h +54 -0
  44. data/include/grpc/impl/codegen/sync_windows.h +42 -0
  45. data/include/grpc/load_reporting.h +48 -0
  46. data/include/grpc/module.modulemap +64 -0
  47. data/include/grpc/slice.h +172 -0
  48. data/include/grpc/slice_buffer.h +84 -0
  49. data/include/grpc/status.h +26 -0
  50. data/include/grpc/support/alloc.h +52 -0
  51. data/include/grpc/support/atm.h +26 -0
  52. data/include/grpc/support/atm_gcc_atomic.h +26 -0
  53. data/include/grpc/support/atm_gcc_sync.h +26 -0
  54. data/include/grpc/support/atm_windows.h +26 -0
  55. data/include/grpc/support/cpu.h +44 -0
  56. data/include/grpc/support/log.h +26 -0
  57. data/include/grpc/support/log_windows.h +38 -0
  58. data/include/grpc/support/port_platform.h +24 -0
  59. data/include/grpc/support/string_util.h +51 -0
  60. data/include/grpc/support/sync.h +282 -0
  61. data/include/grpc/support/sync_abseil.h +26 -0
  62. data/include/grpc/support/sync_custom.h +26 -0
  63. data/include/grpc/support/sync_generic.h +26 -0
  64. data/include/grpc/support/sync_posix.h +26 -0
  65. data/include/grpc/support/sync_windows.h +26 -0
  66. data/include/grpc/support/thd_id.h +44 -0
  67. data/include/grpc/support/time.h +92 -0
  68. data/include/grpc/support/workaround_list.h +31 -0
  69. data/src/core/ext/filters/census/grpc_context.cc +39 -0
  70. data/src/core/ext/filters/client_channel/backend_metric.cc +80 -0
  71. data/src/core/ext/filters/client_channel/backend_metric.h +36 -0
  72. data/src/core/ext/filters/client_channel/backup_poller.cc +183 -0
  73. data/src/core/ext/filters/client_channel/backup_poller.h +42 -0
  74. data/src/core/ext/filters/client_channel/channel_connectivity.cc +220 -0
  75. data/src/core/ext/filters/client_channel/client_channel.cc +3119 -0
  76. data/src/core/ext/filters/client_channel/client_channel.h +581 -0
  77. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +96 -0
  78. data/src/core/ext/filters/client_channel/client_channel_channelz.h +75 -0
  79. data/src/core/ext/filters/client_channel/client_channel_factory.cc +56 -0
  80. data/src/core/ext/filters/client_channel/client_channel_factory.h +46 -0
  81. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +74 -0
  82. data/src/core/ext/filters/client_channel/config_selector.cc +59 -0
  83. data/src/core/ext/filters/client_channel/config_selector.h +145 -0
  84. data/src/core/ext/filters/client_channel/connector.h +79 -0
  85. data/src/core/ext/filters/client_channel/dynamic_filters.cc +190 -0
  86. data/src/core/ext/filters/client_channel/dynamic_filters.h +99 -0
  87. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +83 -0
  88. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +72 -0
  89. data/src/core/ext/filters/client_channel/health/health_check_client.cc +619 -0
  90. data/src/core/ext/filters/client_channel/health/health_check_client.h +177 -0
  91. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +392 -0
  92. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +42 -0
  93. data/src/core/ext/filters/client_channel/http_proxy.cc +234 -0
  94. data/src/core/ext/filters/client_channel/http_proxy.h +28 -0
  95. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +96 -0
  96. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +101 -0
  97. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +304 -0
  98. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +83 -0
  99. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +148 -0
  100. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +29 -0
  101. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +1866 -0
  102. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +47 -0
  103. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +76 -0
  104. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +37 -0
  105. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +44 -0
  106. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +83 -0
  107. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +93 -0
  108. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +76 -0
  109. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +192 -0
  110. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +74 -0
  111. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +522 -0
  112. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +918 -0
  113. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +757 -0
  114. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +37 -0
  115. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +2502 -0
  116. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +503 -0
  117. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +426 -0
  118. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +741 -0
  119. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +745 -0
  120. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +60 -0
  121. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +29 -0
  122. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +795 -0
  123. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +701 -0
  124. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +1362 -0
  125. data/src/core/ext/filters/client_channel/lb_policy.cc +131 -0
  126. data/src/core/ext/filters/client_channel/lb_policy.h +425 -0
  127. data/src/core/ext/filters/client_channel/lb_policy_factory.h +48 -0
  128. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +185 -0
  129. data/src/core/ext/filters/client_channel/lb_policy_registry.h +65 -0
  130. data/src/core/ext/filters/client_channel/local_subchannel_pool.cc +56 -0
  131. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +58 -0
  132. data/src/core/ext/filters/client_channel/proxy_mapper.h +54 -0
  133. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +89 -0
  134. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +50 -0
  135. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +139 -0
  136. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +526 -0
  137. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +74 -0
  138. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc +31 -0
  139. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +110 -0
  140. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +902 -0
  141. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +1203 -0
  142. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +122 -0
  143. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc +28 -0
  144. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +29 -0
  145. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +34 -0
  146. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +28 -0
  147. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +29 -0
  148. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +332 -0
  149. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +380 -0
  150. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +95 -0
  151. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +384 -0
  152. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +195 -0
  153. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +1002 -0
  154. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +28 -0
  155. data/src/core/ext/filters/client_channel/resolver.cc +87 -0
  156. data/src/core/ext/filters/client_channel/resolver.h +136 -0
  157. data/src/core/ext/filters/client_channel/resolver_factory.h +75 -0
  158. data/src/core/ext/filters/client_channel/resolver_registry.cc +195 -0
  159. data/src/core/ext/filters/client_channel/resolver_registry.h +89 -0
  160. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +189 -0
  161. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +99 -0
  162. data/src/core/ext/filters/client_channel/retry_filter.cc +2573 -0
  163. data/src/core/ext/filters/client_channel/retry_filter.h +30 -0
  164. data/src/core/ext/filters/client_channel/retry_service_config.cc +316 -0
  165. data/src/core/ext/filters/client_channel/retry_service_config.h +96 -0
  166. data/src/core/ext/filters/client_channel/retry_throttle.cc +162 -0
  167. data/src/core/ext/filters/client_channel/retry_throttle.h +79 -0
  168. data/src/core/ext/filters/client_channel/server_address.cc +170 -0
  169. data/src/core/ext/filters/client_channel/server_address.h +144 -0
  170. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +156 -0
  171. data/src/core/ext/filters/client_channel/subchannel.cc +1021 -0
  172. data/src/core/ext/filters/client_channel/subchannel.h +382 -0
  173. data/src/core/ext/filters/client_channel/subchannel_interface.h +130 -0
  174. data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +126 -0
  175. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +106 -0
  176. data/src/core/ext/filters/client_idle/client_idle_filter.cc +264 -0
  177. data/src/core/ext/filters/client_idle/idle_filter_state.cc +96 -0
  178. data/src/core/ext/filters/client_idle/idle_filter_state.h +66 -0
  179. data/src/core/ext/filters/deadline/deadline_filter.cc +391 -0
  180. data/src/core/ext/filters/deadline/deadline_filter.h +86 -0
  181. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +503 -0
  182. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +39 -0
  183. data/src/core/ext/filters/fault_injection/service_config_parser.cc +181 -0
  184. data/src/core/ext/filters/fault_injection/service_config_parser.h +85 -0
  185. data/src/core/ext/filters/http/client/http_client_filter.cc +604 -0
  186. data/src/core/ext/filters/http/client/http_client_filter.h +31 -0
  187. data/src/core/ext/filters/http/client_authority_filter.cc +159 -0
  188. data/src/core/ext/filters/http/client_authority_filter.h +34 -0
  189. data/src/core/ext/filters/http/http_filters_plugin.cc +90 -0
  190. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +553 -0
  191. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +53 -0
  192. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +398 -0
  193. data/src/core/ext/filters/http/message_compress/message_decompress_filter.h +31 -0
  194. data/src/core/ext/filters/http/server/http_server_filter.cc +537 -0
  195. data/src/core/ext/filters/http/server/http_server_filter.h +29 -0
  196. data/src/core/ext/filters/max_age/max_age_filter.cc +560 -0
  197. data/src/core/ext/filters/max_age/max_age_filter.h +26 -0
  198. data/src/core/ext/filters/message_size/message_size_filter.cc +402 -0
  199. data/src/core/ext/filters/message_size/message_size_filter.h +66 -0
  200. data/src/core/ext/service_config/service_config.cc +227 -0
  201. data/src/core/ext/service_config/service_config.h +127 -0
  202. data/src/core/ext/service_config/service_config_call_data.h +72 -0
  203. data/src/core/ext/service_config/service_config_parser.cc +89 -0
  204. data/src/core/ext/service_config/service_config_parser.h +97 -0
  205. data/src/core/ext/transport/chttp2/alpn/alpn.cc +45 -0
  206. data/src/core/ext/transport/chttp2/alpn/alpn.h +36 -0
  207. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +276 -0
  208. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +77 -0
  209. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +119 -0
  210. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +95 -0
  211. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +189 -0
  212. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +923 -0
  213. data/src/core/ext/transport/chttp2/server/chttp2_server.h +47 -0
  214. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +53 -0
  215. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +83 -0
  216. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +125 -0
  217. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +252 -0
  218. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +57 -0
  219. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +231 -0
  220. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +42 -0
  221. data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +37 -0
  222. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +3351 -0
  223. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +66 -0
  224. data/src/core/ext/transport/chttp2/transport/context_list.cc +68 -0
  225. data/src/core/ext/transport/chttp2/transport/context_list.h +52 -0
  226. data/src/core/ext/transport/chttp2/transport/flow_control.cc +430 -0
  227. data/src/core/ext/transport/chttp2/transport/flow_control.h +488 -0
  228. data/src/core/ext/transport/chttp2/transport/frame.h +47 -0
  229. data/src/core/ext/transport/chttp2/transport/frame_data.cc +308 -0
  230. data/src/core/ext/transport/chttp2/transport/frame_data.h +83 -0
  231. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +187 -0
  232. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +63 -0
  233. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +132 -0
  234. data/src/core/ext/transport/chttp2/transport/frame_ping.h +46 -0
  235. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +118 -0
  236. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +51 -0
  237. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +273 -0
  238. data/src/core/ext/transport/chttp2/transport/frame_settings.h +62 -0
  239. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +123 -0
  240. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +43 -0
  241. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +41 -0
  242. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +546 -0
  243. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +277 -0
  244. data/src/core/ext/transport/chttp2/transport/hpack_encoder_index.h +107 -0
  245. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +86 -0
  246. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +69 -0
  247. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +1454 -0
  248. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +136 -0
  249. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +146 -0
  250. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +137 -0
  251. data/src/core/ext/transport/chttp2/transport/hpack_utils.cc +46 -0
  252. data/src/core/ext/transport/chttp2/transport/hpack_utils.h +30 -0
  253. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +62 -0
  254. data/src/core/ext/transport/chttp2/transport/http2_settings.h +61 -0
  255. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +92 -0
  256. data/src/core/ext/transport/chttp2/transport/huffsyms.h +32 -0
  257. data/src/core/ext/transport/chttp2/transport/internal.h +892 -0
  258. data/src/core/ext/transport/chttp2/transport/parsing.cc +651 -0
  259. data/src/core/ext/transport/chttp2/transport/popularity_count.h +60 -0
  260. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +216 -0
  261. data/src/core/ext/transport/chttp2/transport/stream_map.cc +177 -0
  262. data/src/core/ext/transport/chttp2/transport/stream_map.h +67 -0
  263. data/src/core/ext/transport/chttp2/transport/varint.cc +62 -0
  264. data/src/core/ext/transport/chttp2/transport/varint.h +71 -0
  265. data/src/core/ext/transport/chttp2/transport/writing.cc +716 -0
  266. data/src/core/ext/transport/inproc/inproc_plugin.cc +28 -0
  267. data/src/core/ext/transport/inproc/inproc_transport.cc +1360 -0
  268. data/src/core/ext/transport/inproc/inproc_transport.h +35 -0
  269. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +406 -0
  270. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +1591 -0
  271. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +17 -0
  272. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +30 -0
  273. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +27 -0
  274. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +66 -0
  275. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +243 -0
  276. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +955 -0
  277. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +371 -0
  278. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1554 -0
  279. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -0
  280. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +271 -0
  281. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +494 -0
  282. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2116 -0
  283. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +35 -0
  284. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +83 -0
  285. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +56 -0
  286. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +370 -0
  287. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +124 -0
  288. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +470 -0
  289. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +35 -0
  290. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +94 -0
  291. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +382 -0
  292. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1295 -0
  293. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +103 -0
  294. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +418 -0
  295. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +34 -0
  296. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +84 -0
  297. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +53 -0
  298. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +161 -0
  299. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +241 -0
  300. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +917 -0
  301. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +171 -0
  302. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +830 -0
  303. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +36 -0
  304. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +94 -0
  305. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +244 -0
  306. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1089 -0
  307. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +27 -0
  308. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +71 -0
  309. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +46 -0
  310. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +133 -0
  311. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +34 -0
  312. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +101 -0
  313. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +43 -0
  314. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +132 -0
  315. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +35 -0
  316. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +96 -0
  317. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +90 -0
  318. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +261 -0
  319. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +125 -0
  320. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +462 -0
  321. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +112 -0
  322. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +397 -0
  323. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +33 -0
  324. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +79 -0
  325. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +138 -0
  326. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +640 -0
  327. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +161 -0
  328. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +680 -0
  329. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -0
  330. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +177 -0
  331. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +42 -0
  332. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +127 -0
  333. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +144 -0
  334. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +536 -0
  335. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +153 -0
  336. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +550 -0
  337. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +185 -0
  338. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +738 -0
  339. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +82 -0
  340. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +312 -0
  341. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +960 -0
  342. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +4213 -0
  343. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +60 -0
  344. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +177 -0
  345. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +49 -0
  346. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +134 -0
  347. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +29 -0
  348. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -0
  349. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +79 -0
  350. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +298 -0
  351. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +79 -0
  352. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +303 -0
  353. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +42 -0
  354. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +123 -0
  355. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +403 -0
  356. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1785 -0
  357. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +19 -0
  358. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +35 -0
  359. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +130 -0
  360. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +559 -0
  361. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +73 -0
  362. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +237 -0
  363. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +148 -0
  364. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +674 -0
  365. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +27 -0
  366. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +62 -0
  367. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +25 -0
  368. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +62 -0
  369. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +146 -0
  370. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +535 -0
  371. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +27 -0
  372. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +62 -0
  373. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +27 -0
  374. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +62 -0
  375. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +54 -0
  376. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +163 -0
  377. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +27 -0
  378. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +62 -0
  379. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +27 -0
  380. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +62 -0
  381. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +121 -0
  382. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +468 -0
  383. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +60 -0
  384. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +205 -0
  385. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +48 -0
  386. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +144 -0
  387. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +36 -0
  388. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +96 -0
  389. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +35 -0
  390. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +90 -0
  391. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +34 -0
  392. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +84 -0
  393. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +65 -0
  394. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +184 -0
  395. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +53 -0
  396. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +158 -0
  397. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +46 -0
  398. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +136 -0
  399. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +63 -0
  400. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +225 -0
  401. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +88 -0
  402. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +343 -0
  403. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +90 -0
  404. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +313 -0
  405. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +17 -0
  406. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +36 -0
  407. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +40 -0
  408. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +111 -0
  409. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +51 -0
  410. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +148 -0
  411. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +30 -0
  412. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +74 -0
  413. data/src/core/ext/upb-generated/google/api/annotations.upb.c +18 -0
  414. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -0
  415. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +242 -0
  416. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +896 -0
  417. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +251 -0
  418. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +943 -0
  419. data/src/core/ext/upb-generated/google/api/http.upb.c +66 -0
  420. data/src/core/ext/upb-generated/google/api/http.upb.h +228 -0
  421. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +27 -0
  422. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +70 -0
  423. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +486 -0
  424. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +2047 -0
  425. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +27 -0
  426. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +70 -0
  427. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +22 -0
  428. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +62 -0
  429. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +79 -0
  430. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +231 -0
  431. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +27 -0
  432. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +70 -0
  433. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +106 -0
  434. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +346 -0
  435. data/src/core/ext/upb-generated/google/rpc/status.upb.c +33 -0
  436. data/src/core/ext/upb-generated/google/rpc/status.upb.h +87 -0
  437. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +49 -0
  438. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +127 -0
  439. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +212 -0
  440. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +805 -0
  441. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +42 -0
  442. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +137 -0
  443. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +36 -0
  444. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +108 -0
  445. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +141 -0
  446. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +507 -0
  447. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +55 -0
  448. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +154 -0
  449. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +48 -0
  450. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +140 -0
  451. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +29 -0
  452. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +70 -0
  453. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +17 -0
  454. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +30 -0
  455. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +28 -0
  456. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +77 -0
  457. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +27 -0
  458. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +66 -0
  459. data/src/core/ext/upb-generated/validate/validate.upb.c +464 -0
  460. data/src/core/ext/upb-generated/validate/validate.upb.h +2447 -0
  461. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +58 -0
  462. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +182 -0
  463. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +28 -0
  464. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +66 -0
  465. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +52 -0
  466. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +155 -0
  467. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +42 -0
  468. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +90 -0
  469. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +36 -0
  470. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +100 -0
  471. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +54 -0
  472. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +178 -0
  473. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +36 -0
  474. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +91 -0
  475. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +58 -0
  476. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +130 -0
  477. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +33 -0
  478. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +83 -0
  479. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +354 -0
  480. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +140 -0
  481. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +46 -0
  482. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +30 -0
  483. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +41 -0
  484. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +35 -0
  485. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +252 -0
  486. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +105 -0
  487. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +424 -0
  488. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +120 -0
  489. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +100 -0
  490. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +45 -0
  491. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +596 -0
  492. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +155 -0
  493. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +53 -0
  494. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +35 -0
  495. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +136 -0
  496. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +35 -0
  497. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +127 -0
  498. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +65 -0
  499. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +56 -0
  500. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +35 -0
  501. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +313 -0
  502. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +150 -0
  503. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +144 -0
  504. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +55 -0
  505. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +56 -0
  506. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +35 -0
  507. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +66 -0
  508. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +40 -0
  509. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +263 -0
  510. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +100 -0
  511. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +236 -0
  512. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +70 -0
  513. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +56 -0
  514. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +35 -0
  515. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +300 -0
  516. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +100 -0
  517. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +43 -0
  518. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +35 -0
  519. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +59 -0
  520. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +40 -0
  521. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +59 -0
  522. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +35 -0
  523. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +72 -0
  524. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +35 -0
  525. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +52 -0
  526. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +35 -0
  527. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +107 -0
  528. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +50 -0
  529. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +140 -0
  530. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +60 -0
  531. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +146 -0
  532. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +55 -0
  533. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +50 -0
  534. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +35 -0
  535. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +205 -0
  536. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +60 -0
  537. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +201 -0
  538. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +65 -0
  539. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +90 -0
  540. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +35 -0
  541. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +67 -0
  542. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +40 -0
  543. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +141 -0
  544. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +70 -0
  545. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +152 -0
  546. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +75 -0
  547. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +115 -0
  548. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +45 -0
  549. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +982 -0
  550. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +295 -0
  551. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +71 -0
  552. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +45 -0
  553. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +61 -0
  554. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +40 -0
  555. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +51 -0
  556. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +35 -0
  557. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +102 -0
  558. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +55 -0
  559. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +123 -0
  560. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +45 -0
  561. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +79 -0
  562. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +35 -0
  563. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +567 -0
  564. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +125 -0
  565. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +44 -0
  566. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +30 -0
  567. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +196 -0
  568. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +60 -0
  569. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +97 -0
  570. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +45 -0
  571. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +251 -0
  572. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +60 -0
  573. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +72 -0
  574. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +35 -0
  575. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +60 -0
  576. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +35 -0
  577. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +142 -0
  578. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +65 -0
  579. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +73 -0
  580. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +35 -0
  581. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +72 -0
  582. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +35 -0
  583. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +80 -0
  584. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +40 -0
  585. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +80 -0
  586. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +35 -0
  587. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +74 -0
  588. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +35 -0
  589. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +163 -0
  590. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +55 -0
  591. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +64 -0
  592. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +50 -0
  593. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +65 -0
  594. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +40 -0
  595. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +56 -0
  596. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +35 -0
  597. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +54 -0
  598. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +35 -0
  599. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +53 -0
  600. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +35 -0
  601. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +76 -0
  602. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +45 -0
  603. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +69 -0
  604. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +40 -0
  605. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +63 -0
  606. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +40 -0
  607. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +81 -0
  608. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +45 -0
  609. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +92 -0
  610. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +65 -0
  611. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +95 -0
  612. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +55 -0
  613. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +34 -0
  614. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +30 -0
  615. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +59 -0
  616. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +40 -0
  617. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +54 -0
  618. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +45 -0
  619. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +47 -0
  620. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +35 -0
  621. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +40 -0
  622. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +30 -0
  623. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +61 -0
  624. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +45 -0
  625. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +39 -0
  626. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +35 -0
  627. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +386 -0
  628. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +165 -0
  629. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +40 -0
  630. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +35 -0
  631. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +37 -0
  632. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +35 -0
  633. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +65 -0
  634. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +50 -0
  635. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +40 -0
  636. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +35 -0
  637. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +66 -0
  638. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +75 -0
  639. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +42 -0
  640. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +35 -0
  641. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +71 -0
  642. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +45 -0
  643. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +52 -0
  644. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +35 -0
  645. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +34 -0
  646. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +30 -0
  647. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +51 -0
  648. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +35 -0
  649. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +44 -0
  650. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +35 -0
  651. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +332 -0
  652. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +145 -0
  653. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +75 -0
  654. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +50 -0
  655. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +43 -0
  656. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +35 -0
  657. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +63 -0
  658. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +40 -0
  659. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +46 -0
  660. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +40 -0
  661. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +50 -0
  662. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +35 -0
  663. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +68 -0
  664. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +40 -0
  665. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +51 -0
  666. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +35 -0
  667. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +45 -0
  668. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +35 -0
  669. data/src/core/ext/xds/certificate_provider_factory.h +61 -0
  670. data/src/core/ext/xds/certificate_provider_registry.cc +103 -0
  671. data/src/core/ext/xds/certificate_provider_registry.h +57 -0
  672. data/src/core/ext/xds/certificate_provider_store.cc +87 -0
  673. data/src/core/ext/xds/certificate_provider_store.h +112 -0
  674. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +144 -0
  675. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +69 -0
  676. data/src/core/ext/xds/xds_api.cc +3965 -0
  677. data/src/core/ext/xds/xds_api.h +744 -0
  678. data/src/core/ext/xds/xds_bootstrap.cc +471 -0
  679. data/src/core/ext/xds/xds_bootstrap.h +125 -0
  680. data/src/core/ext/xds/xds_certificate_provider.cc +405 -0
  681. data/src/core/ext/xds/xds_certificate_provider.h +151 -0
  682. data/src/core/ext/xds/xds_channel_args.h +32 -0
  683. data/src/core/ext/xds/xds_channel_stack_modifier.cc +113 -0
  684. data/src/core/ext/xds/xds_channel_stack_modifier.h +52 -0
  685. data/src/core/ext/xds/xds_client.cc +2791 -0
  686. data/src/core/ext/xds/xds_client.h +380 -0
  687. data/src/core/ext/xds/xds_client_stats.cc +160 -0
  688. data/src/core/ext/xds/xds_client_stats.h +240 -0
  689. data/src/core/ext/xds/xds_http_fault_filter.cc +227 -0
  690. data/src/core/ext/xds/xds_http_fault_filter.h +64 -0
  691. data/src/core/ext/xds/xds_http_filters.cc +116 -0
  692. data/src/core/ext/xds/xds_http_filters.h +133 -0
  693. data/src/core/ext/xds/xds_server_config_fetcher.cc +544 -0
  694. data/src/core/lib/address_utils/parse_address.cc +320 -0
  695. data/src/core/lib/address_utils/parse_address.h +77 -0
  696. data/src/core/lib/address_utils/sockaddr_utils.cc +412 -0
  697. data/src/core/lib/address_utils/sockaddr_utils.h +110 -0
  698. data/src/core/lib/avl/avl.cc +306 -0
  699. data/src/core/lib/avl/avl.h +94 -0
  700. data/src/core/lib/backoff/backoff.cc +78 -0
  701. data/src/core/lib/backoff/backoff.h +89 -0
  702. data/src/core/lib/channel/call_tracer.h +85 -0
  703. data/src/core/lib/channel/channel_args.cc +400 -0
  704. data/src/core/lib/channel/channel_args.h +143 -0
  705. data/src/core/lib/channel/channel_stack.cc +267 -0
  706. data/src/core/lib/channel/channel_stack.h +312 -0
  707. data/src/core/lib/channel/channel_stack_builder.cc +313 -0
  708. data/src/core/lib/channel/channel_stack_builder.h +158 -0
  709. data/src/core/lib/channel/channel_trace.cc +193 -0
  710. data/src/core/lib/channel/channel_trace.h +135 -0
  711. data/src/core/lib/channel/channelz.cc +596 -0
  712. data/src/core/lib/channel/channelz.h +357 -0
  713. data/src/core/lib/channel/channelz_registry.cc +285 -0
  714. data/src/core/lib/channel/channelz_registry.h +99 -0
  715. data/src/core/lib/channel/connected_channel.cc +245 -0
  716. data/src/core/lib/channel/connected_channel.h +33 -0
  717. data/src/core/lib/channel/context.h +52 -0
  718. data/src/core/lib/channel/handshaker.cc +222 -0
  719. data/src/core/lib/channel/handshaker.h +161 -0
  720. data/src/core/lib/channel/handshaker_factory.h +50 -0
  721. data/src/core/lib/channel/handshaker_registry.cc +50 -0
  722. data/src/core/lib/channel/handshaker_registry.h +71 -0
  723. data/src/core/lib/channel/status_util.cc +109 -0
  724. data/src/core/lib/channel/status_util.h +67 -0
  725. data/src/core/lib/compression/algorithm_metadata.h +62 -0
  726. data/src/core/lib/compression/compression.cc +183 -0
  727. data/src/core/lib/compression/compression_args.cc +138 -0
  728. data/src/core/lib/compression/compression_args.h +56 -0
  729. data/src/core/lib/compression/compression_internal.cc +283 -0
  730. data/src/core/lib/compression/compression_internal.h +97 -0
  731. data/src/core/lib/compression/message_compress.cc +192 -0
  732. data/src/core/lib/compression/message_compress.h +40 -0
  733. data/src/core/lib/compression/stream_compression.cc +81 -0
  734. data/src/core/lib/compression/stream_compression.h +117 -0
  735. data/src/core/lib/compression/stream_compression_gzip.cc +231 -0
  736. data/src/core/lib/compression/stream_compression_gzip.h +28 -0
  737. data/src/core/lib/compression/stream_compression_identity.cc +91 -0
  738. data/src/core/lib/compression/stream_compression_identity.h +29 -0
  739. data/src/core/lib/config/core_configuration.cc +96 -0
  740. data/src/core/lib/config/core_configuration.h +146 -0
  741. data/src/core/lib/debug/stats.cc +172 -0
  742. data/src/core/lib/debug/stats.h +71 -0
  743. data/src/core/lib/debug/stats_data.cc +689 -0
  744. data/src/core/lib/debug/stats_data.h +556 -0
  745. data/src/core/lib/debug/trace.cc +155 -0
  746. data/src/core/lib/debug/trace.h +132 -0
  747. data/src/core/lib/event_engine/endpoint_config.cc +45 -0
  748. data/src/core/lib/event_engine/endpoint_config_internal.h +42 -0
  749. data/src/core/lib/event_engine/event_engine.cc +50 -0
  750. data/src/core/lib/event_engine/sockaddr.cc +40 -0
  751. data/src/core/lib/event_engine/sockaddr.h +44 -0
  752. data/src/core/lib/gpr/alloc.cc +76 -0
  753. data/src/core/lib/gpr/alloc.h +28 -0
  754. data/src/core/lib/gpr/atm.cc +35 -0
  755. data/src/core/lib/gpr/cpu_iphone.cc +44 -0
  756. data/src/core/lib/gpr/cpu_linux.cc +82 -0
  757. data/src/core/lib/gpr/cpu_posix.cc +83 -0
  758. data/src/core/lib/gpr/cpu_windows.cc +33 -0
  759. data/src/core/lib/gpr/env.h +40 -0
  760. data/src/core/lib/gpr/env_linux.cc +75 -0
  761. data/src/core/lib/gpr/env_posix.cc +46 -0
  762. data/src/core/lib/gpr/env_windows.cc +74 -0
  763. data/src/core/lib/gpr/log.cc +140 -0
  764. data/src/core/lib/gpr/log_android.cc +77 -0
  765. data/src/core/lib/gpr/log_linux.cc +114 -0
  766. data/src/core/lib/gpr/log_posix.cc +110 -0
  767. data/src/core/lib/gpr/log_windows.cc +116 -0
  768. data/src/core/lib/gpr/murmur_hash.cc +82 -0
  769. data/src/core/lib/gpr/murmur_hash.h +29 -0
  770. data/src/core/lib/gpr/spinlock.h +53 -0
  771. data/src/core/lib/gpr/string.cc +343 -0
  772. data/src/core/lib/gpr/string.h +112 -0
  773. data/src/core/lib/gpr/string_posix.cc +72 -0
  774. data/src/core/lib/gpr/string_util_windows.cc +82 -0
  775. data/src/core/lib/gpr/string_windows.cc +69 -0
  776. data/src/core/lib/gpr/string_windows.h +32 -0
  777. data/src/core/lib/gpr/sync.cc +124 -0
  778. data/src/core/lib/gpr/sync_abseil.cc +114 -0
  779. data/src/core/lib/gpr/sync_posix.cc +170 -0
  780. data/src/core/lib/gpr/sync_windows.cc +120 -0
  781. data/src/core/lib/gpr/time.cc +264 -0
  782. data/src/core/lib/gpr/time_posix.cc +186 -0
  783. data/src/core/lib/gpr/time_precise.cc +168 -0
  784. data/src/core/lib/gpr/time_precise.h +70 -0
  785. data/src/core/lib/gpr/time_windows.cc +99 -0
  786. data/src/core/lib/gpr/tls.h +151 -0
  787. data/src/core/lib/gpr/tmpfile.h +32 -0
  788. data/src/core/lib/gpr/tmpfile_msys.cc +58 -0
  789. data/src/core/lib/gpr/tmpfile_posix.cc +69 -0
  790. data/src/core/lib/gpr/tmpfile_windows.cc +69 -0
  791. data/src/core/lib/gpr/useful.h +113 -0
  792. data/src/core/lib/gpr/wrap_memcpy.cc +43 -0
  793. data/src/core/lib/gprpp/arena.cc +104 -0
  794. data/src/core/lib/gprpp/arena.h +131 -0
  795. data/src/core/lib/gprpp/atomic_utils.h +47 -0
  796. data/src/core/lib/gprpp/bitset.h +188 -0
  797. data/src/core/lib/gprpp/chunked_vector.h +211 -0
  798. data/src/core/lib/gprpp/construct_destruct.h +39 -0
  799. data/src/core/lib/gprpp/debug_location.h +53 -0
  800. data/src/core/lib/gprpp/dual_ref_counted.h +330 -0
  801. data/src/core/lib/gprpp/examine_stack.cc +43 -0
  802. data/src/core/lib/gprpp/examine_stack.h +46 -0
  803. data/src/core/lib/gprpp/fork.cc +244 -0
  804. data/src/core/lib/gprpp/fork.h +103 -0
  805. data/src/core/lib/gprpp/global_config.h +95 -0
  806. data/src/core/lib/gprpp/global_config_custom.h +29 -0
  807. data/src/core/lib/gprpp/global_config_env.cc +137 -0
  808. data/src/core/lib/gprpp/global_config_env.h +131 -0
  809. data/src/core/lib/gprpp/global_config_generic.h +44 -0
  810. data/src/core/lib/gprpp/host_port.cc +112 -0
  811. data/src/core/lib/gprpp/host_port.h +56 -0
  812. data/src/core/lib/gprpp/manual_constructor.h +216 -0
  813. data/src/core/lib/gprpp/match.h +73 -0
  814. data/src/core/lib/gprpp/memory.h +57 -0
  815. data/src/core/lib/gprpp/mpscq.cc +108 -0
  816. data/src/core/lib/gprpp/mpscq.h +99 -0
  817. data/src/core/lib/gprpp/orphanable.h +125 -0
  818. data/src/core/lib/gprpp/overload.h +59 -0
  819. data/src/core/lib/gprpp/ref_counted.h +349 -0
  820. data/src/core/lib/gprpp/ref_counted_ptr.h +353 -0
  821. data/src/core/lib/gprpp/stat.h +38 -0
  822. data/src/core/lib/gprpp/stat_posix.cc +49 -0
  823. data/src/core/lib/gprpp/stat_windows.cc +48 -0
  824. data/src/core/lib/gprpp/status_helper.cc +427 -0
  825. data/src/core/lib/gprpp/status_helper.h +194 -0
  826. data/src/core/lib/gprpp/sync.h +198 -0
  827. data/src/core/lib/gprpp/table.h +411 -0
  828. data/src/core/lib/gprpp/thd.h +174 -0
  829. data/src/core/lib/gprpp/thd_posix.cc +209 -0
  830. data/src/core/lib/gprpp/thd_windows.cc +171 -0
  831. data/src/core/lib/gprpp/time_util.cc +77 -0
  832. data/src/core/lib/gprpp/time_util.h +42 -0
  833. data/src/core/lib/http/format_request.cc +104 -0
  834. data/src/core/lib/http/format_request.h +35 -0
  835. data/src/core/lib/http/httpcli.cc +324 -0
  836. data/src/core/lib/http/httpcli.h +128 -0
  837. data/src/core/lib/http/httpcli_security_connector.cc +215 -0
  838. data/src/core/lib/http/parser.cc +392 -0
  839. data/src/core/lib/http/parser.h +114 -0
  840. data/src/core/lib/iomgr/block_annotate.h +57 -0
  841. data/src/core/lib/iomgr/buffer_list.cc +307 -0
  842. data/src/core/lib/iomgr/buffer_list.h +163 -0
  843. data/src/core/lib/iomgr/call_combiner.cc +281 -0
  844. data/src/core/lib/iomgr/call_combiner.h +215 -0
  845. data/src/core/lib/iomgr/cfstream_handle.cc +210 -0
  846. data/src/core/lib/iomgr/cfstream_handle.h +90 -0
  847. data/src/core/lib/iomgr/closure.h +256 -0
  848. data/src/core/lib/iomgr/combiner.cc +328 -0
  849. data/src/core/lib/iomgr/combiner.h +89 -0
  850. data/src/core/lib/iomgr/dualstack_socket_posix.cc +48 -0
  851. data/src/core/lib/iomgr/dynamic_annotations.h +67 -0
  852. data/src/core/lib/iomgr/endpoint.cc +67 -0
  853. data/src/core/lib/iomgr/endpoint.h +108 -0
  854. data/src/core/lib/iomgr/endpoint_cfstream.cc +389 -0
  855. data/src/core/lib/iomgr/endpoint_cfstream.h +49 -0
  856. data/src/core/lib/iomgr/endpoint_pair.h +34 -0
  857. data/src/core/lib/iomgr/endpoint_pair_event_engine.cc +32 -0
  858. data/src/core/lib/iomgr/endpoint_pair_posix.cc +77 -0
  859. data/src/core/lib/iomgr/endpoint_pair_windows.cc +95 -0
  860. data/src/core/lib/iomgr/error.cc +985 -0
  861. data/src/core/lib/iomgr/error.h +442 -0
  862. data/src/core/lib/iomgr/error_cfstream.cc +59 -0
  863. data/src/core/lib/iomgr/error_cfstream.h +31 -0
  864. data/src/core/lib/iomgr/error_internal.h +66 -0
  865. data/src/core/lib/iomgr/ev_apple.cc +359 -0
  866. data/src/core/lib/iomgr/ev_apple.h +43 -0
  867. data/src/core/lib/iomgr/ev_epoll1_linux.cc +1364 -0
  868. data/src/core/lib/iomgr/ev_epoll1_linux.h +31 -0
  869. data/src/core/lib/iomgr/ev_epollex_linux.cc +1654 -0
  870. data/src/core/lib/iomgr/ev_epollex_linux.h +30 -0
  871. data/src/core/lib/iomgr/ev_poll_posix.cc +1430 -0
  872. data/src/core/lib/iomgr/ev_poll_posix.h +29 -0
  873. data/src/core/lib/iomgr/ev_posix.cc +417 -0
  874. data/src/core/lib/iomgr/ev_posix.h +207 -0
  875. data/src/core/lib/iomgr/ev_windows.cc +30 -0
  876. data/src/core/lib/iomgr/event_engine/closure.cc +77 -0
  877. data/src/core/lib/iomgr/event_engine/closure.h +42 -0
  878. data/src/core/lib/iomgr/event_engine/endpoint.cc +173 -0
  879. data/src/core/lib/iomgr/event_engine/endpoint.h +52 -0
  880. data/src/core/lib/iomgr/event_engine/iomgr.cc +104 -0
  881. data/src/core/lib/iomgr/event_engine/iomgr.h +42 -0
  882. data/src/core/lib/iomgr/event_engine/pollset.cc +88 -0
  883. data/src/core/lib/iomgr/event_engine/pollset.h +25 -0
  884. data/src/core/lib/iomgr/event_engine/promise.h +51 -0
  885. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +41 -0
  886. data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +35 -0
  887. data/src/core/lib/iomgr/event_engine/resolver.cc +114 -0
  888. data/src/core/lib/iomgr/event_engine/tcp.cc +293 -0
  889. data/src/core/lib/iomgr/event_engine/timer.cc +62 -0
  890. data/src/core/lib/iomgr/exec_ctx.cc +227 -0
  891. data/src/core/lib/iomgr/exec_ctx.h +375 -0
  892. data/src/core/lib/iomgr/executor/mpmcqueue.cc +182 -0
  893. data/src/core/lib/iomgr/executor/mpmcqueue.h +171 -0
  894. data/src/core/lib/iomgr/executor/threadpool.cc +136 -0
  895. data/src/core/lib/iomgr/executor/threadpool.h +150 -0
  896. data/src/core/lib/iomgr/executor.cc +455 -0
  897. data/src/core/lib/iomgr/executor.h +122 -0
  898. data/src/core/lib/iomgr/fork_posix.cc +119 -0
  899. data/src/core/lib/iomgr/fork_windows.cc +41 -0
  900. data/src/core/lib/iomgr/gethostname.h +26 -0
  901. data/src/core/lib/iomgr/gethostname_fallback.cc +30 -0
  902. data/src/core/lib/iomgr/gethostname_host_name_max.cc +40 -0
  903. data/src/core/lib/iomgr/gethostname_sysconf.cc +40 -0
  904. data/src/core/lib/iomgr/grpc_if_nametoindex.h +30 -0
  905. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +42 -0
  906. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +38 -0
  907. data/src/core/lib/iomgr/internal_errqueue.cc +68 -0
  908. data/src/core/lib/iomgr/internal_errqueue.h +191 -0
  909. data/src/core/lib/iomgr/iocp_windows.cc +158 -0
  910. data/src/core/lib/iomgr/iocp_windows.h +48 -0
  911. data/src/core/lib/iomgr/iomgr.cc +196 -0
  912. data/src/core/lib/iomgr/iomgr.h +60 -0
  913. data/src/core/lib/iomgr/iomgr_custom.cc +79 -0
  914. data/src/core/lib/iomgr/iomgr_custom.h +49 -0
  915. data/src/core/lib/iomgr/iomgr_internal.cc +53 -0
  916. data/src/core/lib/iomgr/iomgr_internal.h +74 -0
  917. data/src/core/lib/iomgr/iomgr_posix.cc +90 -0
  918. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +200 -0
  919. data/src/core/lib/iomgr/iomgr_windows.cc +105 -0
  920. data/src/core/lib/iomgr/is_epollexclusive_available.cc +119 -0
  921. data/src/core/lib/iomgr/is_epollexclusive_available.h +36 -0
  922. data/src/core/lib/iomgr/load_file.cc +81 -0
  923. data/src/core/lib/iomgr/load_file.h +35 -0
  924. data/src/core/lib/iomgr/lockfree_event.cc +278 -0
  925. data/src/core/lib/iomgr/lockfree_event.h +72 -0
  926. data/src/core/lib/iomgr/nameser.h +106 -0
  927. data/src/core/lib/iomgr/polling_entity.cc +96 -0
  928. data/src/core/lib/iomgr/polling_entity.h +68 -0
  929. data/src/core/lib/iomgr/pollset.cc +56 -0
  930. data/src/core/lib/iomgr/pollset.h +99 -0
  931. data/src/core/lib/iomgr/pollset_custom.cc +105 -0
  932. data/src/core/lib/iomgr/pollset_custom.h +37 -0
  933. data/src/core/lib/iomgr/pollset_set.cc +55 -0
  934. data/src/core/lib/iomgr/pollset_set.h +55 -0
  935. data/src/core/lib/iomgr/pollset_set_custom.cc +47 -0
  936. data/src/core/lib/iomgr/pollset_set_custom.h +26 -0
  937. data/src/core/lib/iomgr/pollset_set_windows.cc +52 -0
  938. data/src/core/lib/iomgr/pollset_set_windows.h +26 -0
  939. data/src/core/lib/iomgr/pollset_windows.cc +243 -0
  940. data/src/core/lib/iomgr/pollset_windows.h +70 -0
  941. data/src/core/lib/iomgr/port.h +221 -0
  942. data/src/core/lib/iomgr/python_util.h +47 -0
  943. data/src/core/lib/iomgr/resolve_address.cc +55 -0
  944. data/src/core/lib/iomgr/resolve_address.h +83 -0
  945. data/src/core/lib/iomgr/resolve_address_custom.cc +169 -0
  946. data/src/core/lib/iomgr/resolve_address_custom.h +44 -0
  947. data/src/core/lib/iomgr/resolve_address_posix.cc +170 -0
  948. data/src/core/lib/iomgr/resolve_address_windows.cc +152 -0
  949. data/src/core/lib/iomgr/resource_quota.cc +1106 -0
  950. data/src/core/lib/iomgr/resource_quota.h +226 -0
  951. data/src/core/lib/iomgr/sockaddr.h +33 -0
  952. data/src/core/lib/iomgr/sockaddr_posix.h +55 -0
  953. data/src/core/lib/iomgr/sockaddr_windows.h +55 -0
  954. data/src/core/lib/iomgr/socket_factory_posix.cc +95 -0
  955. data/src/core/lib/iomgr/socket_factory_posix.h +69 -0
  956. data/src/core/lib/iomgr/socket_mutator.cc +97 -0
  957. data/src/core/lib/iomgr/socket_mutator.h +84 -0
  958. data/src/core/lib/iomgr/socket_utils.h +47 -0
  959. data/src/core/lib/iomgr/socket_utils_common_posix.cc +515 -0
  960. data/src/core/lib/iomgr/socket_utils_linux.cc +42 -0
  961. data/src/core/lib/iomgr/socket_utils_posix.cc +58 -0
  962. data/src/core/lib/iomgr/socket_utils_posix.h +163 -0
  963. data/src/core/lib/iomgr/socket_utils_windows.cc +47 -0
  964. data/src/core/lib/iomgr/socket_windows.cc +202 -0
  965. data/src/core/lib/iomgr/socket_windows.h +127 -0
  966. data/src/core/lib/iomgr/sys_epoll_wrapper.h +30 -0
  967. data/src/core/lib/iomgr/tcp_client.cc +38 -0
  968. data/src/core/lib/iomgr/tcp_client.h +56 -0
  969. data/src/core/lib/iomgr/tcp_client_cfstream.cc +205 -0
  970. data/src/core/lib/iomgr/tcp_client_custom.cc +152 -0
  971. data/src/core/lib/iomgr/tcp_client_posix.cc +360 -0
  972. data/src/core/lib/iomgr/tcp_client_posix.h +70 -0
  973. data/src/core/lib/iomgr/tcp_client_windows.cc +241 -0
  974. data/src/core/lib/iomgr/tcp_custom.cc +377 -0
  975. data/src/core/lib/iomgr/tcp_custom.h +86 -0
  976. data/src/core/lib/iomgr/tcp_posix.cc +1848 -0
  977. data/src/core/lib/iomgr/tcp_posix.h +67 -0
  978. data/src/core/lib/iomgr/tcp_server.cc +79 -0
  979. data/src/core/lib/iomgr/tcp_server.h +149 -0
  980. data/src/core/lib/iomgr/tcp_server_custom.cc +467 -0
  981. data/src/core/lib/iomgr/tcp_server_posix.cc +645 -0
  982. data/src/core/lib/iomgr/tcp_server_utils_posix.h +128 -0
  983. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +223 -0
  984. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +175 -0
  985. data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +36 -0
  986. data/src/core/lib/iomgr/tcp_server_windows.cc +568 -0
  987. data/src/core/lib/iomgr/tcp_windows.cc +530 -0
  988. data/src/core/lib/iomgr/tcp_windows.h +54 -0
  989. data/src/core/lib/iomgr/time_averaged_stats.cc +64 -0
  990. data/src/core/lib/iomgr/time_averaged_stats.h +72 -0
  991. data/src/core/lib/iomgr/timer.cc +46 -0
  992. data/src/core/lib/iomgr/timer.h +131 -0
  993. data/src/core/lib/iomgr/timer_custom.cc +96 -0
  994. data/src/core/lib/iomgr/timer_custom.h +43 -0
  995. data/src/core/lib/iomgr/timer_generic.cc +718 -0
  996. data/src/core/lib/iomgr/timer_generic.h +40 -0
  997. data/src/core/lib/iomgr/timer_heap.cc +134 -0
  998. data/src/core/lib/iomgr/timer_heap.h +43 -0
  999. data/src/core/lib/iomgr/timer_manager.cc +363 -0
  1000. data/src/core/lib/iomgr/timer_manager.h +41 -0
  1001. data/src/core/lib/iomgr/unix_sockets_posix.cc +108 -0
  1002. data/src/core/lib/iomgr/unix_sockets_posix.h +49 -0
  1003. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +62 -0
  1004. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +82 -0
  1005. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +39 -0
  1006. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +99 -0
  1007. data/src/core/lib/iomgr/wakeup_fd_pipe.h +28 -0
  1008. data/src/core/lib/iomgr/wakeup_fd_posix.cc +70 -0
  1009. data/src/core/lib/iomgr/wakeup_fd_posix.h +98 -0
  1010. data/src/core/lib/iomgr/work_serializer.cc +155 -0
  1011. data/src/core/lib/iomgr/work_serializer.h +81 -0
  1012. data/src/core/lib/json/json.h +250 -0
  1013. data/src/core/lib/json/json_reader.cc +849 -0
  1014. data/src/core/lib/json/json_util.cc +126 -0
  1015. data/src/core/lib/json/json_util.h +154 -0
  1016. data/src/core/lib/json/json_writer.cc +335 -0
  1017. data/src/core/lib/matchers/matchers.cc +327 -0
  1018. data/src/core/lib/matchers/matchers.h +160 -0
  1019. data/src/core/lib/profiling/basic_timers.cc +295 -0
  1020. data/src/core/lib/profiling/stap_timers.cc +50 -0
  1021. data/src/core/lib/profiling/timers.h +94 -0
  1022. data/src/core/lib/security/authorization/authorization_engine.h +44 -0
  1023. data/src/core/lib/security/authorization/authorization_policy_provider.h +33 -0
  1024. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +46 -0
  1025. data/src/core/lib/security/authorization/evaluate_args.cc +213 -0
  1026. data/src/core/lib/security/authorization/evaluate_args.h +91 -0
  1027. data/src/core/lib/security/authorization/sdk_server_authz_filter.cc +171 -0
  1028. data/src/core/lib/security/authorization/sdk_server_authz_filter.h +67 -0
  1029. data/src/core/lib/security/context/security_context.cc +325 -0
  1030. data/src/core/lib/security/context/security_context.h +152 -0
  1031. data/src/core/lib/security/credentials/alts/alts_credentials.cc +111 -0
  1032. data/src/core/lib/security/credentials/alts/alts_credentials.h +109 -0
  1033. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +72 -0
  1034. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +57 -0
  1035. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +68 -0
  1036. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +33 -0
  1037. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +102 -0
  1038. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +127 -0
  1039. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +46 -0
  1040. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +75 -0
  1041. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +59 -0
  1042. data/src/core/lib/security/credentials/composite/composite_credentials.cc +230 -0
  1043. data/src/core/lib/security/credentials/composite/composite_credentials.h +106 -0
  1044. data/src/core/lib/security/credentials/credentials.cc +164 -0
  1045. data/src/core/lib/security/credentials/credentials.h +291 -0
  1046. data/src/core/lib/security/credentials/credentials_metadata.cc +61 -0
  1047. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +404 -0
  1048. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +81 -0
  1049. data/src/core/lib/security/credentials/external/aws_request_signer.cc +214 -0
  1050. data/src/core/lib/security/credentials/external/aws_request_signer.h +72 -0
  1051. data/src/core/lib/security/credentials/external/external_account_credentials.cc +527 -0
  1052. data/src/core/lib/security/credentials/external/external_account_credentials.h +122 -0
  1053. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +136 -0
  1054. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +49 -0
  1055. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +211 -0
  1056. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +60 -0
  1057. data/src/core/lib/security/credentials/fake/fake_credentials.cc +113 -0
  1058. data/src/core/lib/security/credentials/fake/fake_credentials.h +87 -0
  1059. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +42 -0
  1060. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +465 -0
  1061. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +87 -0
  1062. data/src/core/lib/security/credentials/iam/iam_credentials.cc +81 -0
  1063. data/src/core/lib/security/credentials/iam/iam_credentials.h +49 -0
  1064. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +64 -0
  1065. data/src/core/lib/security/credentials/jwt/json_token.cc +288 -0
  1066. data/src/core/lib/security/credentials/jwt/json_token.h +76 -0
  1067. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +192 -0
  1068. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +89 -0
  1069. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +922 -0
  1070. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +122 -0
  1071. data/src/core/lib/security/credentials/local/local_credentials.cc +65 -0
  1072. data/src/core/lib/security/credentials/local/local_credentials.h +61 -0
  1073. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +753 -0
  1074. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +173 -0
  1075. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +267 -0
  1076. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +72 -0
  1077. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +385 -0
  1078. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +108 -0
  1079. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +348 -0
  1080. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +217 -0
  1081. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +455 -0
  1082. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +147 -0
  1083. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +177 -0
  1084. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +193 -0
  1085. data/src/core/lib/security/credentials/tls/tls_credentials.cc +133 -0
  1086. data/src/core/lib/security/credentials/tls/tls_credentials.h +62 -0
  1087. data/src/core/lib/security/credentials/tls/tls_utils.cc +123 -0
  1088. data/src/core/lib/security/credentials/tls/tls_utils.h +51 -0
  1089. data/src/core/lib/security/credentials/xds/xds_credentials.cc +244 -0
  1090. data/src/core/lib/security/credentials/xds/xds_credentials.h +69 -0
  1091. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +311 -0
  1092. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +76 -0
  1093. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +327 -0
  1094. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +45 -0
  1095. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +121 -0
  1096. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +97 -0
  1097. data/src/core/lib/security/security_connector/load_system_roots.h +33 -0
  1098. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +33 -0
  1099. data/src/core/lib/security/security_connector/load_system_roots_linux.cc +171 -0
  1100. data/src/core/lib/security/security_connector/load_system_roots_linux.h +46 -0
  1101. data/src/core/lib/security/security_connector/local/local_security_connector.cc +294 -0
  1102. data/src/core/lib/security/security_connector/local/local_security_connector.h +59 -0
  1103. data/src/core/lib/security/security_connector/security_connector.cc +137 -0
  1104. data/src/core/lib/security/security_connector/security_connector.h +183 -0
  1105. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +453 -0
  1106. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +81 -0
  1107. data/src/core/lib/security/security_connector/ssl_utils.cc +611 -0
  1108. data/src/core/lib/security/security_connector/ssl_utils.h +188 -0
  1109. data/src/core/lib/security/security_connector/ssl_utils_config.cc +32 -0
  1110. data/src/core/lib/security/security_connector/ssl_utils_config.h +30 -0
  1111. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +667 -0
  1112. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +243 -0
  1113. data/src/core/lib/security/transport/auth_filters.h +36 -0
  1114. data/src/core/lib/security/transport/client_auth_filter.cc +473 -0
  1115. data/src/core/lib/security/transport/secure_endpoint.cc +442 -0
  1116. data/src/core/lib/security/transport/secure_endpoint.h +42 -0
  1117. data/src/core/lib/security/transport/security_handshaker.cc +642 -0
  1118. data/src/core/lib/security/transport/security_handshaker.h +46 -0
  1119. data/src/core/lib/security/transport/server_auth_filter.cc +331 -0
  1120. data/src/core/lib/security/transport/tsi_error.cc +28 -0
  1121. data/src/core/lib/security/transport/tsi_error.h +30 -0
  1122. data/src/core/lib/security/util/json_util.cc +70 -0
  1123. data/src/core/lib/security/util/json_util.h +45 -0
  1124. data/src/core/lib/slice/b64.cc +239 -0
  1125. data/src/core/lib/slice/b64.h +50 -0
  1126. data/src/core/lib/slice/percent_encoding.cc +212 -0
  1127. data/src/core/lib/slice/percent_encoding.h +66 -0
  1128. data/src/core/lib/slice/slice.cc +592 -0
  1129. data/src/core/lib/slice/slice_api.cc +39 -0
  1130. data/src/core/lib/slice/slice_buffer.cc +413 -0
  1131. data/src/core/lib/slice/slice_intern.cc +367 -0
  1132. data/src/core/lib/slice/slice_internal.h +123 -0
  1133. data/src/core/lib/slice/slice_refcount.cc +17 -0
  1134. data/src/core/lib/slice/slice_refcount.h +121 -0
  1135. data/src/core/lib/slice/slice_refcount_base.h +173 -0
  1136. data/src/core/lib/slice/slice_split.cc +100 -0
  1137. data/src/core/lib/slice/slice_split.h +40 -0
  1138. data/src/core/lib/slice/slice_string_helpers.cc +44 -0
  1139. data/src/core/lib/slice/slice_string_helpers.h +38 -0
  1140. data/src/core/lib/slice/slice_utils.h +200 -0
  1141. data/src/core/lib/slice/static_slice.cc +529 -0
  1142. data/src/core/lib/slice/static_slice.h +331 -0
  1143. data/src/core/lib/surface/api_trace.cc +25 -0
  1144. data/src/core/lib/surface/api_trace.h +53 -0
  1145. data/src/core/lib/surface/builtins.cc +49 -0
  1146. data/src/core/lib/surface/builtins.h +26 -0
  1147. data/src/core/lib/surface/byte_buffer.cc +92 -0
  1148. data/src/core/lib/surface/byte_buffer_reader.cc +101 -0
  1149. data/src/core/lib/surface/call.cc +2056 -0
  1150. data/src/core/lib/surface/call.h +131 -0
  1151. data/src/core/lib/surface/call_details.cc +41 -0
  1152. data/src/core/lib/surface/call_log_batch.cc +111 -0
  1153. data/src/core/lib/surface/call_test_only.h +43 -0
  1154. data/src/core/lib/surface/channel.cc +535 -0
  1155. data/src/core/lib/surface/channel.h +178 -0
  1156. data/src/core/lib/surface/channel_init.cc +56 -0
  1157. data/src/core/lib/surface/channel_init.h +86 -0
  1158. data/src/core/lib/surface/channel_ping.cc +63 -0
  1159. data/src/core/lib/surface/channel_stack_type.cc +59 -0
  1160. data/src/core/lib/surface/channel_stack_type.h +47 -0
  1161. data/src/core/lib/surface/completion_queue.cc +1429 -0
  1162. data/src/core/lib/surface/completion_queue.h +98 -0
  1163. data/src/core/lib/surface/completion_queue_factory.cc +88 -0
  1164. data/src/core/lib/surface/completion_queue_factory.h +39 -0
  1165. data/src/core/lib/surface/event_string.cc +62 -0
  1166. data/src/core/lib/surface/event_string.h +31 -0
  1167. data/src/core/lib/surface/init.cc +220 -0
  1168. data/src/core/lib/surface/init.h +35 -0
  1169. data/src/core/lib/surface/init_secure.cc +103 -0
  1170. data/src/core/lib/surface/lame_client.cc +192 -0
  1171. data/src/core/lib/surface/lame_client.h +33 -0
  1172. data/src/core/lib/surface/metadata_array.cc +36 -0
  1173. data/src/core/lib/surface/server.cc +1608 -0
  1174. data/src/core/lib/surface/server.h +497 -0
  1175. data/src/core/lib/surface/validate_metadata.cc +136 -0
  1176. data/src/core/lib/surface/validate_metadata.h +45 -0
  1177. data/src/core/lib/surface/version.cc +28 -0
  1178. data/src/core/lib/transport/bdp_estimator.cc +87 -0
  1179. data/src/core/lib/transport/bdp_estimator.h +95 -0
  1180. data/src/core/lib/transport/byte_stream.cc +158 -0
  1181. data/src/core/lib/transport/byte_stream.h +166 -0
  1182. data/src/core/lib/transport/connectivity_state.cc +188 -0
  1183. data/src/core/lib/transport/connectivity_state.h +145 -0
  1184. data/src/core/lib/transport/error_utils.cc +191 -0
  1185. data/src/core/lib/transport/error_utils.h +58 -0
  1186. data/src/core/lib/transport/http2_errors.h +41 -0
  1187. data/src/core/lib/transport/metadata.cc +714 -0
  1188. data/src/core/lib/transport/metadata.h +449 -0
  1189. data/src/core/lib/transport/metadata_batch.cc +94 -0
  1190. data/src/core/lib/transport/metadata_batch.h +1055 -0
  1191. data/src/core/lib/transport/parsed_metadata.h +263 -0
  1192. data/src/core/lib/transport/pid_controller.cc +51 -0
  1193. data/src/core/lib/transport/pid_controller.h +116 -0
  1194. data/src/core/lib/transport/static_metadata.cc +1117 -0
  1195. data/src/core/lib/transport/static_metadata.h +340 -0
  1196. data/src/core/lib/transport/status_conversion.cc +92 -0
  1197. data/src/core/lib/transport/status_conversion.h +38 -0
  1198. data/src/core/lib/transport/status_metadata.cc +63 -0
  1199. data/src/core/lib/transport/status_metadata.h +48 -0
  1200. data/src/core/lib/transport/timeout_encoding.cc +151 -0
  1201. data/src/core/lib/transport/timeout_encoding.h +38 -0
  1202. data/src/core/lib/transport/transport.cc +261 -0
  1203. data/src/core/lib/transport/transport.h +471 -0
  1204. data/src/core/lib/transport/transport_impl.h +71 -0
  1205. data/src/core/lib/transport/transport_op_string.cc +189 -0
  1206. data/src/core/lib/uri/uri_parser.cc +191 -0
  1207. data/src/core/lib/uri/uri_parser.h +87 -0
  1208. data/src/core/plugin_registry/grpc_plugin_registry.cc +197 -0
  1209. data/src/core/tsi/alts/crypt/aes_gcm.cc +690 -0
  1210. data/src/core/tsi/alts/crypt/gsec.cc +190 -0
  1211. data/src/core/tsi/alts/crypt/gsec.h +459 -0
  1212. data/src/core/tsi/alts/frame_protector/alts_counter.cc +118 -0
  1213. data/src/core/tsi/alts/frame_protector/alts_counter.h +98 -0
  1214. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +66 -0
  1215. data/src/core/tsi/alts/frame_protector/alts_crypter.h +255 -0
  1216. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +408 -0
  1217. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +55 -0
  1218. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +114 -0
  1219. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +114 -0
  1220. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +105 -0
  1221. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +103 -0
  1222. data/src/core/tsi/alts/frame_protector/frame_handler.cc +219 -0
  1223. data/src/core/tsi/alts/frame_protector/frame_handler.h +236 -0
  1224. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +903 -0
  1225. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +160 -0
  1226. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +83 -0
  1227. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +73 -0
  1228. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +705 -0
  1229. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +104 -0
  1230. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +89 -0
  1231. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +64 -0
  1232. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +53 -0
  1233. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +223 -0
  1234. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +171 -0
  1235. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +226 -0
  1236. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +54 -0
  1237. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +144 -0
  1238. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +49 -0
  1239. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +91 -0
  1240. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +174 -0
  1241. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +99 -0
  1242. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +478 -0
  1243. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +199 -0
  1244. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +307 -0
  1245. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +57 -0
  1246. data/src/core/tsi/fake_transport_security.cc +809 -0
  1247. data/src/core/tsi/fake_transport_security.h +47 -0
  1248. data/src/core/tsi/local_transport_security.cc +178 -0
  1249. data/src/core/tsi/local_transport_security.h +50 -0
  1250. data/src/core/tsi/ssl/session_cache/ssl_session.h +71 -0
  1251. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +57 -0
  1252. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +179 -0
  1253. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +92 -0
  1254. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +75 -0
  1255. data/src/core/tsi/ssl_transport_security.cc +2260 -0
  1256. data/src/core/tsi/ssl_transport_security.h +366 -0
  1257. data/src/core/tsi/ssl_types.h +42 -0
  1258. data/src/core/tsi/transport_security.cc +384 -0
  1259. data/src/core/tsi/transport_security.h +142 -0
  1260. data/src/core/tsi/transport_security_grpc.cc +73 -0
  1261. data/src/core/tsi/transport_security_grpc.h +80 -0
  1262. data/src/core/tsi/transport_security_interface.h +507 -0
  1263. data/src/ruby/bin/math_client.rb +140 -0
  1264. data/src/ruby/bin/math_pb.rb +34 -0
  1265. data/src/ruby/bin/math_server.rb +191 -0
  1266. data/src/ruby/bin/math_services_pb.rb +51 -0
  1267. data/src/ruby/bin/noproto_client.rb +93 -0
  1268. data/src/ruby/bin/noproto_server.rb +97 -0
  1269. data/src/ruby/ext/grpc/ext-export.clang +1 -0
  1270. data/src/ruby/ext/grpc/ext-export.gcc +6 -0
  1271. data/src/ruby/ext/grpc/extconf.rb +129 -0
  1272. data/src/ruby/ext/grpc/extconf.rb.orig +130 -0
  1273. data/src/ruby/ext/grpc/extconf.rb.rej +18 -0
  1274. data/src/ruby/ext/grpc/rb_byte_buffer.c +65 -0
  1275. data/src/ruby/ext/grpc/rb_byte_buffer.h +35 -0
  1276. data/src/ruby/ext/grpc/rb_call.c +1051 -0
  1277. data/src/ruby/ext/grpc/rb_call.h +57 -0
  1278. data/src/ruby/ext/grpc/rb_call_credentials.c +341 -0
  1279. data/src/ruby/ext/grpc/rb_call_credentials.h +31 -0
  1280. data/src/ruby/ext/grpc/rb_channel.c +846 -0
  1281. data/src/ruby/ext/grpc/rb_channel.h +34 -0
  1282. data/src/ruby/ext/grpc/rb_channel_args.c +155 -0
  1283. data/src/ruby/ext/grpc/rb_channel_args.h +38 -0
  1284. data/src/ruby/ext/grpc/rb_channel_credentials.c +286 -0
  1285. data/src/ruby/ext/grpc/rb_channel_credentials.h +37 -0
  1286. data/src/ruby/ext/grpc/rb_completion_queue.c +101 -0
  1287. data/src/ruby/ext/grpc/rb_completion_queue.h +36 -0
  1288. data/src/ruby/ext/grpc/rb_compression_options.c +471 -0
  1289. data/src/ruby/ext/grpc/rb_compression_options.h +29 -0
  1290. data/src/ruby/ext/grpc/rb_enable_cpp.cc +22 -0
  1291. data/src/ruby/ext/grpc/rb_event_thread.c +145 -0
  1292. data/src/ruby/ext/grpc/rb_event_thread.h +21 -0
  1293. data/src/ruby/ext/grpc/rb_grpc.c +333 -0
  1294. data/src/ruby/ext/grpc/rb_grpc.h +77 -0
  1295. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +605 -0
  1296. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +913 -0
  1297. data/src/ruby/ext/grpc/rb_loader.c +57 -0
  1298. data/src/ruby/ext/grpc/rb_loader.h +25 -0
  1299. data/src/ruby/ext/grpc/rb_server.c +385 -0
  1300. data/src/ruby/ext/grpc/rb_server.h +32 -0
  1301. data/src/ruby/ext/grpc/rb_server_credentials.c +259 -0
  1302. data/src/ruby/ext/grpc/rb_server_credentials.h +37 -0
  1303. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +218 -0
  1304. data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +37 -0
  1305. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +170 -0
  1306. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +37 -0
  1307. data/src/ruby/lib/grpc/core/status_codes.rb +135 -0
  1308. data/src/ruby/lib/grpc/core/time_consts.rb +56 -0
  1309. data/src/ruby/lib/grpc/errors.rb +277 -0
  1310. data/src/ruby/lib/grpc/generic/active_call.rb +669 -0
  1311. data/src/ruby/lib/grpc/generic/bidi_call.rb +233 -0
  1312. data/src/ruby/lib/grpc/generic/client_stub.rb +503 -0
  1313. data/src/ruby/lib/grpc/generic/interceptor_registry.rb +53 -0
  1314. data/src/ruby/lib/grpc/generic/interceptors.rb +186 -0
  1315. data/src/ruby/lib/grpc/generic/rpc_desc.rb +204 -0
  1316. data/src/ruby/lib/grpc/generic/rpc_server.rb +551 -0
  1317. data/src/ruby/lib/grpc/generic/service.rb +211 -0
  1318. data/src/ruby/lib/grpc/google_rpc_status_utils.rb +40 -0
  1319. data/src/ruby/lib/grpc/grpc.rb +24 -0
  1320. data/src/ruby/lib/grpc/logconfig.rb +44 -0
  1321. data/src/ruby/lib/grpc/notifier.rb +45 -0
  1322. data/src/ruby/lib/grpc/structs.rb +15 -0
  1323. data/src/ruby/lib/grpc/version.rb +18 -0
  1324. data/src/ruby/lib/grpc.rb +37 -0
  1325. data/src/ruby/pb/README.md +42 -0
  1326. data/src/ruby/pb/generate_proto_ruby.sh +51 -0
  1327. data/src/ruby/pb/grpc/health/checker.rb +75 -0
  1328. data/src/ruby/pb/grpc/health/v1/health_pb.rb +31 -0
  1329. data/src/ruby/pb/grpc/health/v1/health_services_pb.rb +62 -0
  1330. data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +44 -0
  1331. data/src/ruby/pb/grpc/testing/metrics_pb.rb +28 -0
  1332. data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +49 -0
  1333. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +17 -0
  1334. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +145 -0
  1335. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +16 -0
  1336. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +152 -0
  1337. data/src/ruby/spec/call_credentials_spec.rb +42 -0
  1338. data/src/ruby/spec/call_spec.rb +180 -0
  1339. data/src/ruby/spec/channel_connection_spec.rb +126 -0
  1340. data/src/ruby/spec/channel_credentials_spec.rb +124 -0
  1341. data/src/ruby/spec/channel_spec.rb +245 -0
  1342. data/src/ruby/spec/client_auth_spec.rb +152 -0
  1343. data/src/ruby/spec/client_server_spec.rb +664 -0
  1344. data/src/ruby/spec/compression_options_spec.rb +149 -0
  1345. data/src/ruby/spec/debug_message_spec.rb +134 -0
  1346. data/src/ruby/spec/error_sanity_spec.rb +49 -0
  1347. data/src/ruby/spec/errors_spec.rb +142 -0
  1348. data/src/ruby/spec/errors_spec.rb.rej +11 -0
  1349. data/src/ruby/spec/generic/active_call_spec.rb +683 -0
  1350. data/src/ruby/spec/generic/client_interceptors_spec.rb +153 -0
  1351. data/src/ruby/spec/generic/client_stub_spec.rb +1083 -0
  1352. data/src/ruby/spec/generic/interceptor_registry_spec.rb +65 -0
  1353. data/src/ruby/spec/generic/rpc_desc_spec.rb +374 -0
  1354. data/src/ruby/spec/generic/rpc_server_pool_spec.rb +127 -0
  1355. data/src/ruby/spec/generic/rpc_server_spec.rb +748 -0
  1356. data/src/ruby/spec/generic/server_interceptors_spec.rb +218 -0
  1357. data/src/ruby/spec/generic/service_spec.rb +263 -0
  1358. data/src/ruby/spec/google_rpc_status_utils_spec.rb +282 -0
  1359. data/src/ruby/spec/pb/codegen/grpc/testing/package_options.proto +28 -0
  1360. data/src/ruby/spec/pb/codegen/grpc/testing/package_options_import.proto +22 -0
  1361. data/src/ruby/spec/pb/codegen/grpc/testing/package_options_import2.proto +23 -0
  1362. data/src/ruby/spec/pb/codegen/grpc/testing/package_options_ruby_style.proto +41 -0
  1363. data/src/ruby/spec/pb/codegen/grpc/testing/same_package_service_name.proto +27 -0
  1364. data/src/ruby/spec/pb/codegen/grpc/testing/same_ruby_package_service_name.proto +29 -0
  1365. data/src/ruby/spec/pb/codegen/package_option_spec.rb +98 -0
  1366. data/src/ruby/spec/pb/duplicate/codegen_spec.rb +57 -0
  1367. data/src/ruby/spec/pb/health/checker_spec.rb +236 -0
  1368. data/src/ruby/spec/server_credentials_spec.rb +104 -0
  1369. data/src/ruby/spec/server_spec.rb +231 -0
  1370. data/src/ruby/spec/spec_helper.rb +61 -0
  1371. data/src/ruby/spec/support/helpers.rb +107 -0
  1372. data/src/ruby/spec/support/services.rb +160 -0
  1373. data/src/ruby/spec/testdata/README +1 -0
  1374. data/src/ruby/spec/testdata/ca.pem +20 -0
  1375. data/src/ruby/spec/testdata/client.key +28 -0
  1376. data/src/ruby/spec/testdata/client.pem +20 -0
  1377. data/src/ruby/spec/testdata/server1.key +28 -0
  1378. data/src/ruby/spec/testdata/server1.pem +22 -0
  1379. data/src/ruby/spec/time_consts_spec.rb +74 -0
  1380. data/src/ruby/spec/user_agent_spec.rb +74 -0
  1381. data/third_party/abseil-cpp/absl/algorithm/algorithm.h +159 -0
  1382. data/third_party/abseil-cpp/absl/algorithm/container.h +1764 -0
  1383. data/third_party/abseil-cpp/absl/base/attributes.h +702 -0
  1384. data/third_party/abseil-cpp/absl/base/call_once.h +219 -0
  1385. data/third_party/abseil-cpp/absl/base/casts.h +187 -0
  1386. data/third_party/abseil-cpp/absl/base/config.h +742 -0
  1387. data/third_party/abseil-cpp/absl/base/const_init.h +76 -0
  1388. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +496 -0
  1389. data/third_party/abseil-cpp/absl/base/internal/atomic_hook.h +200 -0
  1390. data/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +107 -0
  1391. data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +94 -0
  1392. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +169 -0
  1393. data/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h +398 -0
  1394. data/third_party/abseil-cpp/absl/base/internal/endian.h +327 -0
  1395. data/third_party/abseil-cpp/absl/base/internal/errno_saver.h +43 -0
  1396. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.cc +93 -0
  1397. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.h +130 -0
  1398. data/third_party/abseil-cpp/absl/base/internal/hide_ptr.h +51 -0
  1399. data/third_party/abseil-cpp/absl/base/internal/identity.h +37 -0
  1400. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +107 -0
  1401. data/third_party/abseil-cpp/absl/base/internal/invoke.h +187 -0
  1402. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +620 -0
  1403. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +126 -0
  1404. data/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +134 -0
  1405. data/third_party/abseil-cpp/absl/base/internal/per_thread_tls.h +52 -0
  1406. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +242 -0
  1407. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +195 -0
  1408. data/third_party/abseil-cpp/absl/base/internal/scheduling_mode.h +58 -0
  1409. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +229 -0
  1410. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +246 -0
  1411. data/third_party/abseil-cpp/absl/base/internal/spinlock_akaros.inc +35 -0
  1412. data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +74 -0
  1413. data/third_party/abseil-cpp/absl/base/internal/spinlock_posix.inc +46 -0
  1414. data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.cc +81 -0
  1415. data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +93 -0
  1416. data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +37 -0
  1417. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +439 -0
  1418. data/third_party/abseil-cpp/absl/base/internal/sysinfo.h +74 -0
  1419. data/third_party/abseil-cpp/absl/base/internal/thread_annotations.h +271 -0
  1420. data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +155 -0
  1421. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +265 -0
  1422. data/third_party/abseil-cpp/absl/base/internal/throw_delegate.cc +212 -0
  1423. data/third_party/abseil-cpp/absl/base/internal/throw_delegate.h +75 -0
  1424. data/third_party/abseil-cpp/absl/base/internal/tsan_mutex_interface.h +68 -0
  1425. data/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +82 -0
  1426. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +138 -0
  1427. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +124 -0
  1428. data/third_party/abseil-cpp/absl/base/log_severity.cc +27 -0
  1429. data/third_party/abseil-cpp/absl/base/log_severity.h +121 -0
  1430. data/third_party/abseil-cpp/absl/base/macros.h +158 -0
  1431. data/third_party/abseil-cpp/absl/base/optimization.h +244 -0
  1432. data/third_party/abseil-cpp/absl/base/options.h +238 -0
  1433. data/third_party/abseil-cpp/absl/base/policy_checks.h +111 -0
  1434. data/third_party/abseil-cpp/absl/base/port.h +25 -0
  1435. data/third_party/abseil-cpp/absl/base/thread_annotations.h +335 -0
  1436. data/third_party/abseil-cpp/absl/container/fixed_array.h +532 -0
  1437. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +606 -0
  1438. data/third_party/abseil-cpp/absl/container/inlined_vector.h +847 -0
  1439. data/third_party/abseil-cpp/absl/container/internal/common.h +206 -0
  1440. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +290 -0
  1441. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +460 -0
  1442. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +161 -0
  1443. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +208 -0
  1444. data/third_party/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h +85 -0
  1445. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +274 -0
  1446. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +322 -0
  1447. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +31 -0
  1448. data/third_party/abseil-cpp/absl/container/internal/have_sse.h +50 -0
  1449. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +967 -0
  1450. data/third_party/abseil-cpp/absl/container/internal/layout.h +743 -0
  1451. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +197 -0
  1452. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +61 -0
  1453. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1903 -0
  1454. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +139 -0
  1455. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.h +32 -0
  1456. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1949 -0
  1457. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +71 -0
  1458. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +382 -0
  1459. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +134 -0
  1460. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +199 -0
  1461. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +134 -0
  1462. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +80 -0
  1463. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +108 -0
  1464. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +253 -0
  1465. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +24 -0
  1466. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +93 -0
  1467. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +346 -0
  1468. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +147 -0
  1469. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +173 -0
  1470. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.h +158 -0
  1471. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +140 -0
  1472. data/third_party/abseil-cpp/absl/debugging/stacktrace.h +231 -0
  1473. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +36 -0
  1474. data/third_party/abseil-cpp/absl/debugging/symbolize.h +99 -0
  1475. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +101 -0
  1476. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +1560 -0
  1477. data/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +40 -0
  1478. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +81 -0
  1479. data/third_party/abseil-cpp/absl/functional/bind_front.h +184 -0
  1480. data/third_party/abseil-cpp/absl/functional/function_ref.h +139 -0
  1481. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +95 -0
  1482. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +106 -0
  1483. data/third_party/abseil-cpp/absl/hash/hash.h +325 -0
  1484. data/third_party/abseil-cpp/absl/hash/internal/city.cc +349 -0
  1485. data/third_party/abseil-cpp/absl/hash/internal/city.h +78 -0
  1486. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +70 -0
  1487. data/third_party/abseil-cpp/absl/hash/internal/hash.h +1045 -0
  1488. data/third_party/abseil-cpp/absl/hash/internal/wyhash.cc +111 -0
  1489. data/third_party/abseil-cpp/absl/hash/internal/wyhash.h +48 -0
  1490. data/third_party/abseil-cpp/absl/memory/memory.h +699 -0
  1491. data/third_party/abseil-cpp/absl/meta/type_traits.h +767 -0
  1492. data/third_party/abseil-cpp/absl/numeric/bits.h +177 -0
  1493. data/third_party/abseil-cpp/absl/numeric/int128.cc +390 -0
  1494. data/third_party/abseil-cpp/absl/numeric/int128.h +1092 -0
  1495. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +302 -0
  1496. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +308 -0
  1497. data/third_party/abseil-cpp/absl/numeric/internal/bits.h +358 -0
  1498. data/third_party/abseil-cpp/absl/numeric/internal/representation.h +55 -0
  1499. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +69 -0
  1500. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +396 -0
  1501. data/third_party/abseil-cpp/absl/status/status.cc +452 -0
  1502. data/third_party/abseil-cpp/absl/status/status.h +878 -0
  1503. data/third_party/abseil-cpp/absl/status/status_payload_printer.cc +38 -0
  1504. data/third_party/abseil-cpp/absl/status/status_payload_printer.h +51 -0
  1505. data/third_party/abseil-cpp/absl/status/statusor.cc +71 -0
  1506. data/third_party/abseil-cpp/absl/status/statusor.h +760 -0
  1507. data/third_party/abseil-cpp/absl/strings/ascii.cc +200 -0
  1508. data/third_party/abseil-cpp/absl/strings/ascii.h +242 -0
  1509. data/third_party/abseil-cpp/absl/strings/charconv.cc +984 -0
  1510. data/third_party/abseil-cpp/absl/strings/charconv.h +119 -0
  1511. data/third_party/abseil-cpp/absl/strings/cord.cc +1953 -0
  1512. data/third_party/abseil-cpp/absl/strings/cord.h +1394 -0
  1513. data/third_party/abseil-cpp/absl/strings/escaping.cc +949 -0
  1514. data/third_party/abseil-cpp/absl/strings/escaping.h +164 -0
  1515. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +156 -0
  1516. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +359 -0
  1517. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +423 -0
  1518. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +504 -0
  1519. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.h +99 -0
  1520. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +83 -0
  1521. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +543 -0
  1522. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +146 -0
  1523. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +897 -0
  1524. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +589 -0
  1525. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +114 -0
  1526. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +180 -0
  1527. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +58 -0
  1528. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +112 -0
  1529. data/third_party/abseil-cpp/absl/strings/internal/memutil.h +148 -0
  1530. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +36 -0
  1531. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +89 -0
  1532. data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +73 -0
  1533. data/third_party/abseil-cpp/absl/strings/internal/stl_type_traits.h +248 -0
  1534. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +488 -0
  1535. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +518 -0
  1536. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +259 -0
  1537. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +217 -0
  1538. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +333 -0
  1539. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +75 -0
  1540. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +427 -0
  1541. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +1423 -0
  1542. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +37 -0
  1543. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.cc +72 -0
  1544. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +96 -0
  1545. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +350 -0
  1546. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +349 -0
  1547. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +314 -0
  1548. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +430 -0
  1549. data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +64 -0
  1550. data/third_party/abseil-cpp/absl/strings/internal/utf8.cc +53 -0
  1551. data/third_party/abseil-cpp/absl/strings/internal/utf8.h +50 -0
  1552. data/third_party/abseil-cpp/absl/strings/match.cc +43 -0
  1553. data/third_party/abseil-cpp/absl/strings/match.h +100 -0
  1554. data/third_party/abseil-cpp/absl/strings/numbers.cc +1093 -0
  1555. data/third_party/abseil-cpp/absl/strings/numbers.h +266 -0
  1556. data/third_party/abseil-cpp/absl/strings/str_cat.cc +246 -0
  1557. data/third_party/abseil-cpp/absl/strings/str_cat.h +408 -0
  1558. data/third_party/abseil-cpp/absl/strings/str_format.h +813 -0
  1559. data/third_party/abseil-cpp/absl/strings/str_join.h +293 -0
  1560. data/third_party/abseil-cpp/absl/strings/str_replace.cc +82 -0
  1561. data/third_party/abseil-cpp/absl/strings/str_replace.h +219 -0
  1562. data/third_party/abseil-cpp/absl/strings/str_split.cc +139 -0
  1563. data/third_party/abseil-cpp/absl/strings/str_split.h +548 -0
  1564. data/third_party/abseil-cpp/absl/strings/string_view.cc +235 -0
  1565. data/third_party/abseil-cpp/absl/strings/string_view.h +629 -0
  1566. data/third_party/abseil-cpp/absl/strings/strip.h +91 -0
  1567. data/third_party/abseil-cpp/absl/strings/substitute.cc +171 -0
  1568. data/third_party/abseil-cpp/absl/strings/substitute.h +696 -0
  1569. data/third_party/abseil-cpp/absl/synchronization/barrier.cc +52 -0
  1570. data/third_party/abseil-cpp/absl/synchronization/barrier.h +79 -0
  1571. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +57 -0
  1572. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +99 -0
  1573. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +140 -0
  1574. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +60 -0
  1575. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +154 -0
  1576. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +698 -0
  1577. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +141 -0
  1578. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +156 -0
  1579. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +106 -0
  1580. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +115 -0
  1581. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +428 -0
  1582. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +155 -0
  1583. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +2751 -0
  1584. data/third_party/abseil-cpp/absl/synchronization/mutex.h +1082 -0
  1585. data/third_party/abseil-cpp/absl/synchronization/notification.cc +78 -0
  1586. data/third_party/abseil-cpp/absl/synchronization/notification.h +123 -0
  1587. data/third_party/abseil-cpp/absl/time/civil_time.cc +175 -0
  1588. data/third_party/abseil-cpp/absl/time/civil_time.h +538 -0
  1589. data/third_party/abseil-cpp/absl/time/clock.cc +585 -0
  1590. data/third_party/abseil-cpp/absl/time/clock.h +74 -0
  1591. data/third_party/abseil-cpp/absl/time/duration.cc +954 -0
  1592. data/third_party/abseil-cpp/absl/time/format.cc +160 -0
  1593. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time.h +332 -0
  1594. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +628 -0
  1595. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +386 -0
  1596. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h +102 -0
  1597. data/third_party/abseil-cpp/absl/time/internal/cctz/src/civil_time_detail.cc +94 -0
  1598. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +140 -0
  1599. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.h +52 -0
  1600. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1029 -0
  1601. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +45 -0
  1602. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +76 -0
  1603. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +113 -0
  1604. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +93 -0
  1605. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +965 -0
  1606. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +137 -0
  1607. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +315 -0
  1608. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +55 -0
  1609. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +187 -0
  1610. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc +159 -0
  1611. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h +132 -0
  1612. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +122 -0
  1613. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +116 -0
  1614. data/third_party/abseil-cpp/absl/time/internal/get_current_time_chrono.inc +31 -0
  1615. data/third_party/abseil-cpp/absl/time/internal/get_current_time_posix.inc +24 -0
  1616. data/third_party/abseil-cpp/absl/time/time.cc +500 -0
  1617. data/third_party/abseil-cpp/absl/time/time.h +1585 -0
  1618. data/third_party/abseil-cpp/absl/types/bad_optional_access.cc +48 -0
  1619. data/third_party/abseil-cpp/absl/types/bad_optional_access.h +78 -0
  1620. data/third_party/abseil-cpp/absl/types/bad_variant_access.cc +64 -0
  1621. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +82 -0
  1622. data/third_party/abseil-cpp/absl/types/internal/optional.h +396 -0
  1623. data/third_party/abseil-cpp/absl/types/internal/span.h +128 -0
  1624. data/third_party/abseil-cpp/absl/types/internal/variant.h +1646 -0
  1625. data/third_party/abseil-cpp/absl/types/optional.h +776 -0
  1626. data/third_party/abseil-cpp/absl/types/span.h +726 -0
  1627. data/third_party/abseil-cpp/absl/types/variant.h +866 -0
  1628. data/third_party/abseil-cpp/absl/utility/utility.h +350 -0
  1629. data/third_party/address_sorting/address_sorting.c +375 -0
  1630. data/third_party/address_sorting/address_sorting_internal.h +70 -0
  1631. data/third_party/address_sorting/address_sorting_posix.c +98 -0
  1632. data/third_party/address_sorting/address_sorting_windows.c +95 -0
  1633. data/third_party/address_sorting/include/address_sorting/address_sorting.h +115 -0
  1634. data/third_party/boringssl-with-bazel/err_data.c +1489 -0
  1635. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +276 -0
  1636. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +122 -0
  1637. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +91 -0
  1638. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +87 -0
  1639. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_enum.c +195 -0
  1640. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +266 -0
  1641. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +88 -0
  1642. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +420 -0
  1643. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +298 -0
  1644. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +288 -0
  1645. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +77 -0
  1646. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c +83 -0
  1647. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +650 -0
  1648. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +266 -0
  1649. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +212 -0
  1650. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +163 -0
  1651. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +264 -0
  1652. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utf8.c +236 -0
  1653. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +440 -0
  1654. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +80 -0
  1655. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +105 -0
  1656. data/third_party/boringssl-with-bazel/src/crypto/asn1/charmap.h +15 -0
  1657. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +93 -0
  1658. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +97 -0
  1659. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +91 -0
  1660. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +196 -0
  1661. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +1193 -0
  1662. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +709 -0
  1663. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +233 -0
  1664. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +332 -0
  1665. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +129 -0
  1666. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +281 -0
  1667. data/third_party/boringssl-with-bazel/src/crypto/asn1/time_support.c +206 -0
  1668. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +469 -0
  1669. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +702 -0
  1670. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +324 -0
  1671. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +541 -0
  1672. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +275 -0
  1673. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +311 -0
  1674. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.c +192 -0
  1675. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +111 -0
  1676. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +483 -0
  1677. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +115 -0
  1678. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +192 -0
  1679. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +122 -0
  1680. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +156 -0
  1681. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +57 -0
  1682. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +470 -0
  1683. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +172 -0
  1684. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +52 -0
  1685. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +264 -0
  1686. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +728 -0
  1687. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +711 -0
  1688. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +96 -0
  1689. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +155 -0
  1690. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +175 -0
  1691. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +45 -0
  1692. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +127 -0
  1693. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +152 -0
  1694. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesccm.c +447 -0
  1695. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +283 -0
  1696. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +891 -0
  1697. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +343 -0
  1698. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +85 -0
  1699. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +462 -0
  1700. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +87 -0
  1701. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +601 -0
  1702. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +226 -0
  1703. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +338 -0
  1704. data/third_party/boringssl-with-bazel/src/crypto/cmac/cmac.c +278 -0
  1705. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +821 -0
  1706. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +127 -0
  1707. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +31 -0
  1708. data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-fuchsia.c +55 -0
  1709. data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-linux.c +62 -0
  1710. data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-win.c +41 -0
  1711. data/third_party/boringssl-with-bazel/src/crypto/cpu-arm-linux.c +229 -0
  1712. data/third_party/boringssl-with-bazel/src/crypto/cpu-arm-linux.h +201 -0
  1713. data/third_party/boringssl-with-bazel/src/crypto/cpu-arm.c +38 -0
  1714. data/third_party/boringssl-with-bazel/src/crypto/cpu-intel.c +291 -0
  1715. data/third_party/boringssl-with-bazel/src/crypto/cpu-ppc64le.c +38 -0
  1716. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +226 -0
  1717. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +2159 -0
  1718. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +7872 -0
  1719. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +146 -0
  1720. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +539 -0
  1721. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +160 -0
  1722. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +272 -0
  1723. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +268 -0
  1724. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +946 -0
  1725. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +390 -0
  1726. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +34 -0
  1727. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +559 -0
  1728. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +95 -0
  1729. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +385 -0
  1730. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +56 -0
  1731. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +124 -0
  1732. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +267 -0
  1733. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.c +99 -0
  1734. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +857 -0
  1735. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +58 -0
  1736. data/third_party/boringssl-with-bazel/src/crypto/evp/digestsign.c +231 -0
  1737. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +456 -0
  1738. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +547 -0
  1739. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +484 -0
  1740. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +269 -0
  1741. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +277 -0
  1742. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +286 -0
  1743. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +255 -0
  1744. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +104 -0
  1745. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +221 -0
  1746. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +648 -0
  1747. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +194 -0
  1748. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +110 -0
  1749. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +248 -0
  1750. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +146 -0
  1751. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +489 -0
  1752. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +211 -0
  1753. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +151 -0
  1754. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +261 -0
  1755. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c +108 -0
  1756. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c +1282 -0
  1757. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +238 -0
  1758. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c +236 -0
  1759. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +122 -0
  1760. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +266 -0
  1761. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.c +316 -0
  1762. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.c +541 -0
  1763. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c +438 -0
  1764. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +230 -0
  1765. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c +200 -0
  1766. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c +236 -0
  1767. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +902 -0
  1768. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +87 -0
  1769. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +1288 -0
  1770. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +378 -0
  1771. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +326 -0
  1772. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c +711 -0
  1773. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +715 -0
  1774. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.c +146 -0
  1775. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +502 -0
  1776. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +186 -0
  1777. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +749 -0
  1778. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +1064 -0
  1779. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +341 -0
  1780. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +226 -0
  1781. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +104 -0
  1782. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c +364 -0
  1783. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +498 -0
  1784. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c +284 -0
  1785. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +636 -0
  1786. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +1473 -0
  1787. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_des.c +237 -0
  1788. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +128 -0
  1789. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +89 -0
  1790. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/des.c +784 -0
  1791. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/internal.h +238 -0
  1792. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +217 -0
  1793. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +456 -0
  1794. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +282 -0
  1795. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c +304 -0
  1796. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +112 -0
  1797. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +195 -0
  1798. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +1268 -0
  1799. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +472 -0
  1800. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +524 -0
  1801. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c +100 -0
  1802. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +772 -0
  1803. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +328 -0
  1804. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +1180 -0
  1805. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64-table.h +9497 -0
  1806. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64.c +633 -0
  1807. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64.h +153 -0
  1808. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +740 -0
  1809. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +297 -0
  1810. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +175 -0
  1811. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +357 -0
  1812. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +270 -0
  1813. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c +255 -0
  1814. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +270 -0
  1815. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +122 -0
  1816. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +339 -0
  1817. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +39 -0
  1818. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +32 -0
  1819. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c +228 -0
  1820. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +240 -0
  1821. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/internal.h +37 -0
  1822. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +284 -0
  1823. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +178 -0
  1824. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +203 -0
  1825. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +201 -0
  1826. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +733 -0
  1827. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +304 -0
  1828. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +420 -0
  1829. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +97 -0
  1830. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c +91 -0
  1831. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c +202 -0
  1832. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +137 -0
  1833. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +49 -0
  1834. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/getrandom_fillin.h +64 -0
  1835. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +184 -0
  1836. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +457 -0
  1837. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +401 -0
  1838. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c +243 -0
  1839. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +131 -0
  1840. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +695 -0
  1841. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +935 -0
  1842. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +1416 -0
  1843. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +79 -0
  1844. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +874 -0
  1845. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +53 -0
  1846. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1-altivec.c +361 -0
  1847. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +357 -0
  1848. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +321 -0
  1849. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +508 -0
  1850. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +39 -0
  1851. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +165 -0
  1852. data/third_party/boringssl-with-bazel/src/crypto/hkdf/hkdf.c +112 -0
  1853. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +618 -0
  1854. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +2198 -0
  1855. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +68 -0
  1856. data/third_party/boringssl-with-bazel/src/crypto/internal.h +959 -0
  1857. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +253 -0
  1858. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +353 -0
  1859. data/third_party/boringssl-with-bazel/src/crypto/mem.c +392 -0
  1860. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +553 -0
  1861. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +11585 -0
  1862. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.c +122 -0
  1863. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +252 -0
  1864. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +358 -0
  1865. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +769 -0
  1866. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +87 -0
  1867. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +255 -0
  1868. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +214 -0
  1869. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +65 -0
  1870. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +65 -0
  1871. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +58 -0
  1872. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +164 -0
  1873. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +526 -0
  1874. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +138 -0
  1875. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +316 -0
  1876. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +530 -0
  1877. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +1383 -0
  1878. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +41 -0
  1879. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +321 -0
  1880. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +307 -0
  1881. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +860 -0
  1882. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +45 -0
  1883. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +221 -0
  1884. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +56 -0
  1885. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +46 -0
  1886. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fuchsia.c +34 -0
  1887. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +34 -0
  1888. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +74 -0
  1889. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +73 -0
  1890. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.c +98 -0
  1891. data/third_party/boringssl-with-bazel/src/crypto/refcount_c11.c +67 -0
  1892. data/third_party/boringssl-with-bazel/src/crypto/refcount_lock.c +53 -0
  1893. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +324 -0
  1894. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c +22 -0
  1895. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +82 -0
  1896. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +425 -0
  1897. data/third_party/boringssl-with-bazel/src/crypto/thread.c +110 -0
  1898. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +59 -0
  1899. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +182 -0
  1900. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +260 -0
  1901. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +318 -0
  1902. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +1399 -0
  1903. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +858 -0
  1904. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +766 -0
  1905. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +96 -0
  1906. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +128 -0
  1907. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +118 -0
  1908. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +163 -0
  1909. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +842 -0
  1910. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +459 -0
  1911. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +277 -0
  1912. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +83 -0
  1913. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +398 -0
  1914. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +246 -0
  1915. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +400 -0
  1916. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +130 -0
  1917. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +246 -0
  1918. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +365 -0
  1919. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +116 -0
  1920. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +90 -0
  1921. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +358 -0
  1922. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +461 -0
  1923. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +106 -0
  1924. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +103 -0
  1925. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +212 -0
  1926. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +830 -0
  1927. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +199 -0
  1928. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +304 -0
  1929. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +240 -0
  1930. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +331 -0
  1931. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +204 -0
  1932. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +281 -0
  1933. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +2456 -0
  1934. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +651 -0
  1935. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +284 -0
  1936. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +388 -0
  1937. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +84 -0
  1938. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +137 -0
  1939. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +153 -0
  1940. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +386 -0
  1941. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +98 -0
  1942. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +565 -0
  1943. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +77 -0
  1944. data/third_party/boringssl-with-bazel/src/crypto/x509/x_info.c +98 -0
  1945. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +544 -0
  1946. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c +106 -0
  1947. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +217 -0
  1948. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +106 -0
  1949. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +94 -0
  1950. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +80 -0
  1951. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +71 -0
  1952. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +394 -0
  1953. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +201 -0
  1954. data/third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h +138 -0
  1955. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +84 -0
  1956. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +287 -0
  1957. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +132 -0
  1958. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_int.h +217 -0
  1959. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +155 -0
  1960. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +131 -0
  1961. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +189 -0
  1962. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +843 -0
  1963. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c +226 -0
  1964. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c +72 -0
  1965. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +639 -0
  1966. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c +133 -0
  1967. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c +144 -0
  1968. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +468 -0
  1969. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +501 -0
  1970. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c +563 -0
  1971. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c +106 -0
  1972. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c +148 -0
  1973. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +266 -0
  1974. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c +121 -0
  1975. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +218 -0
  1976. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c +91 -0
  1977. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +362 -0
  1978. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c +558 -0
  1979. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c +68 -0
  1980. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pci.c +289 -0
  1981. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcia.c +57 -0
  1982. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c +139 -0
  1983. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c +154 -0
  1984. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +230 -0
  1985. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +929 -0
  1986. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +156 -0
  1987. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +1437 -0
  1988. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +480 -0
  1989. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +207 -0
  1990. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +240 -0
  1991. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +1321 -0
  1992. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +18 -0
  1993. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +718 -0
  1994. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +628 -0
  1995. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +190 -0
  1996. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +939 -0
  1997. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +62 -0
  1998. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +93 -0
  1999. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +1057 -0
  2000. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +137 -0
  2001. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +18 -0
  2002. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +586 -0
  2003. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +96 -0
  2004. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +41 -0
  2005. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +661 -0
  2006. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +91 -0
  2007. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +183 -0
  2008. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +202 -0
  2009. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +169 -0
  2010. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +201 -0
  2011. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +183 -0
  2012. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +361 -0
  2013. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +348 -0
  2014. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +457 -0
  2015. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +16 -0
  2016. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +18 -0
  2017. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +442 -0
  2018. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +372 -0
  2019. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +118 -0
  2020. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +238 -0
  2021. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +109 -0
  2022. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +466 -0
  2023. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +1109 -0
  2024. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +99 -0
  2025. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +203 -0
  2026. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +68 -0
  2027. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +186 -0
  2028. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +350 -0
  2029. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +102 -0
  2030. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +16 -0
  2031. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +81 -0
  2032. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +108 -0
  2033. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +109 -0
  2034. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +184 -0
  2035. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +4259 -0
  2036. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +256 -0
  2037. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +18 -0
  2038. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +18 -0
  2039. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +70 -0
  2040. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +18 -0
  2041. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +18 -0
  2042. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +483 -0
  2043. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +18 -0
  2044. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +240 -0
  2045. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +277 -0
  2046. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +49 -0
  2047. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +102 -0
  2048. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +114 -0
  2049. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +96 -0
  2050. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +108 -0
  2051. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +859 -0
  2052. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +16 -0
  2053. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +294 -0
  2054. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +37 -0
  2055. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +222 -0
  2056. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +18 -0
  2057. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +5606 -0
  2058. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +333 -0
  2059. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +542 -0
  2060. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +191 -0
  2061. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +647 -0
  2062. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +310 -0
  2063. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +90 -0
  2064. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +2450 -0
  2065. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +18 -0
  2066. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +1020 -0
  2067. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +192 -0
  2068. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +835 -0
  2069. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +268 -0
  2070. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +273 -0
  2071. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +232 -0
  2072. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +200 -0
  2073. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +353 -0
  2074. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +1084 -0
  2075. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +4325 -0
  2076. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +986 -0
  2077. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +758 -0
  2078. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +1986 -0
  2079. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +1956 -0
  2080. data/third_party/boringssl-with-bazel/src/ssl/internal.h +3953 -0
  2081. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +730 -0
  2082. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +219 -0
  2083. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +453 -0
  2084. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +432 -0
  2085. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +896 -0
  2086. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +306 -0
  2087. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +1014 -0
  2088. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +1717 -0
  2089. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +585 -0
  2090. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +400 -0
  2091. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +3068 -0
  2092. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +837 -0
  2093. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +1342 -0
  2094. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +233 -0
  2095. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +272 -0
  2096. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +398 -0
  2097. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +1363 -0
  2098. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +384 -0
  2099. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +733 -0
  2100. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +1122 -0
  2101. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +582 -0
  2102. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +1349 -0
  2103. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +319 -0
  2104. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +705 -0
  2105. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +981 -0
  2106. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +619 -0
  2107. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +3147 -0
  2108. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +1226 -0
  2109. data/third_party/cares/ares_build.h +223 -0
  2110. data/third_party/cares/cares/ares.h +670 -0
  2111. data/third_party/cares/cares/ares__close_sockets.c +61 -0
  2112. data/third_party/cares/cares/ares__get_hostent.c +261 -0
  2113. data/third_party/cares/cares/ares__read_line.c +73 -0
  2114. data/third_party/cares/cares/ares__timeval.c +111 -0
  2115. data/third_party/cares/cares/ares_cancel.c +63 -0
  2116. data/third_party/cares/cares/ares_create_query.c +206 -0
  2117. data/third_party/cares/cares/ares_data.c +222 -0
  2118. data/third_party/cares/cares/ares_data.h +72 -0
  2119. data/third_party/cares/cares/ares_destroy.c +113 -0
  2120. data/third_party/cares/cares/ares_dns.h +103 -0
  2121. data/third_party/cares/cares/ares_expand_name.c +209 -0
  2122. data/third_party/cares/cares/ares_expand_string.c +70 -0
  2123. data/third_party/cares/cares/ares_fds.c +59 -0
  2124. data/third_party/cares/cares/ares_free_hostent.c +41 -0
  2125. data/third_party/cares/cares/ares_free_string.c +25 -0
  2126. data/third_party/cares/cares/ares_getenv.c +30 -0
  2127. data/third_party/cares/cares/ares_getenv.h +26 -0
  2128. data/third_party/cares/cares/ares_gethostbyaddr.c +294 -0
  2129. data/third_party/cares/cares/ares_gethostbyname.c +529 -0
  2130. data/third_party/cares/cares/ares_getnameinfo.c +453 -0
  2131. data/third_party/cares/cares/ares_getopt.c +122 -0
  2132. data/third_party/cares/cares/ares_getopt.h +53 -0
  2133. data/third_party/cares/cares/ares_getsock.c +66 -0
  2134. data/third_party/cares/cares/ares_inet_net_pton.h +25 -0
  2135. data/third_party/cares/cares/ares_init.c +2615 -0
  2136. data/third_party/cares/cares/ares_iphlpapi.h +221 -0
  2137. data/third_party/cares/cares/ares_ipv6.h +78 -0
  2138. data/third_party/cares/cares/ares_library_init.c +195 -0
  2139. data/third_party/cares/cares/ares_library_init.h +43 -0
  2140. data/third_party/cares/cares/ares_llist.c +63 -0
  2141. data/third_party/cares/cares/ares_llist.h +39 -0
  2142. data/third_party/cares/cares/ares_mkquery.c +24 -0
  2143. data/third_party/cares/cares/ares_nowarn.c +260 -0
  2144. data/third_party/cares/cares/ares_nowarn.h +61 -0
  2145. data/third_party/cares/cares/ares_options.c +406 -0
  2146. data/third_party/cares/cares/ares_parse_a_reply.c +264 -0
  2147. data/third_party/cares/cares/ares_parse_aaaa_reply.c +264 -0
  2148. data/third_party/cares/cares/ares_parse_mx_reply.c +170 -0
  2149. data/third_party/cares/cares/ares_parse_naptr_reply.c +194 -0
  2150. data/third_party/cares/cares/ares_parse_ns_reply.c +183 -0
  2151. data/third_party/cares/cares/ares_parse_ptr_reply.c +221 -0
  2152. data/third_party/cares/cares/ares_parse_soa_reply.c +133 -0
  2153. data/third_party/cares/cares/ares_parse_srv_reply.c +179 -0
  2154. data/third_party/cares/cares/ares_parse_txt_reply.c +220 -0
  2155. data/third_party/cares/cares/ares_platform.c +11042 -0
  2156. data/third_party/cares/cares/ares_platform.h +43 -0
  2157. data/third_party/cares/cares/ares_private.h +382 -0
  2158. data/third_party/cares/cares/ares_process.c +1473 -0
  2159. data/third_party/cares/cares/ares_query.c +186 -0
  2160. data/third_party/cares/cares/ares_rules.h +125 -0
  2161. data/third_party/cares/cares/ares_search.c +323 -0
  2162. data/third_party/cares/cares/ares_send.c +137 -0
  2163. data/third_party/cares/cares/ares_setup.h +217 -0
  2164. data/third_party/cares/cares/ares_strcasecmp.c +66 -0
  2165. data/third_party/cares/cares/ares_strcasecmp.h +30 -0
  2166. data/third_party/cares/cares/ares_strdup.c +49 -0
  2167. data/third_party/cares/cares/ares_strdup.h +24 -0
  2168. data/third_party/cares/cares/ares_strerror.c +56 -0
  2169. data/third_party/cares/cares/ares_strsplit.c +174 -0
  2170. data/third_party/cares/cares/ares_strsplit.h +43 -0
  2171. data/third_party/cares/cares/ares_timeout.c +88 -0
  2172. data/third_party/cares/cares/ares_version.c +11 -0
  2173. data/third_party/cares/cares/ares_version.h +24 -0
  2174. data/third_party/cares/cares/ares_writev.c +79 -0
  2175. data/third_party/cares/cares/bitncmp.c +59 -0
  2176. data/third_party/cares/cares/bitncmp.h +26 -0
  2177. data/third_party/cares/cares/config-win32.h +351 -0
  2178. data/third_party/cares/cares/inet_net_pton.c +450 -0
  2179. data/third_party/cares/cares/inet_ntop.c +207 -0
  2180. data/third_party/cares/cares/setup_once.h +554 -0
  2181. data/third_party/cares/cares/windows_port.c +22 -0
  2182. data/third_party/cares/config_darwin/ares_config.h +428 -0
  2183. data/third_party/cares/config_freebsd/ares_config.h +505 -0
  2184. data/third_party/cares/config_linux/ares_config.h +461 -0
  2185. data/third_party/cares/config_openbsd/ares_config.h +505 -0
  2186. data/third_party/re2/re2/bitmap256.h +117 -0
  2187. data/third_party/re2/re2/bitstate.cc +385 -0
  2188. data/third_party/re2/re2/compile.cc +1261 -0
  2189. data/third_party/re2/re2/dfa.cc +2118 -0
  2190. data/third_party/re2/re2/filtered_re2.cc +137 -0
  2191. data/third_party/re2/re2/filtered_re2.h +114 -0
  2192. data/third_party/re2/re2/mimics_pcre.cc +197 -0
  2193. data/third_party/re2/re2/nfa.cc +713 -0
  2194. data/third_party/re2/re2/onepass.cc +623 -0
  2195. data/third_party/re2/re2/parse.cc +2483 -0
  2196. data/third_party/re2/re2/perl_groups.cc +119 -0
  2197. data/third_party/re2/re2/pod_array.h +55 -0
  2198. data/third_party/re2/re2/prefilter.cc +711 -0
  2199. data/third_party/re2/re2/prefilter.h +108 -0
  2200. data/third_party/re2/re2/prefilter_tree.cc +407 -0
  2201. data/third_party/re2/re2/prefilter_tree.h +139 -0
  2202. data/third_party/re2/re2/prog.cc +1166 -0
  2203. data/third_party/re2/re2/prog.h +455 -0
  2204. data/third_party/re2/re2/re2.cc +1331 -0
  2205. data/third_party/re2/re2/re2.h +1017 -0
  2206. data/third_party/re2/re2/regexp.cc +987 -0
  2207. data/third_party/re2/re2/regexp.h +665 -0
  2208. data/third_party/re2/re2/set.cc +176 -0
  2209. data/third_party/re2/re2/set.h +85 -0
  2210. data/third_party/re2/re2/simplify.cc +665 -0
  2211. data/third_party/re2/re2/sparse_array.h +392 -0
  2212. data/third_party/re2/re2/sparse_set.h +264 -0
  2213. data/third_party/re2/re2/stringpiece.cc +65 -0
  2214. data/third_party/re2/re2/stringpiece.h +210 -0
  2215. data/third_party/re2/re2/tostring.cc +351 -0
  2216. data/third_party/re2/re2/unicode_casefold.cc +582 -0
  2217. data/third_party/re2/re2/unicode_casefold.h +78 -0
  2218. data/third_party/re2/re2/unicode_groups.cc +6269 -0
  2219. data/third_party/re2/re2/unicode_groups.h +67 -0
  2220. data/third_party/re2/re2/walker-inl.h +246 -0
  2221. data/third_party/re2/util/benchmark.h +156 -0
  2222. data/third_party/re2/util/flags.h +26 -0
  2223. data/third_party/re2/util/logging.h +109 -0
  2224. data/third_party/re2/util/malloc_counter.h +19 -0
  2225. data/third_party/re2/util/mix.h +41 -0
  2226. data/third_party/re2/util/mutex.h +148 -0
  2227. data/third_party/re2/util/pcre.cc +1025 -0
  2228. data/third_party/re2/util/pcre.h +681 -0
  2229. data/third_party/re2/util/rune.cc +260 -0
  2230. data/third_party/re2/util/strutil.cc +149 -0
  2231. data/third_party/re2/util/strutil.h +21 -0
  2232. data/third_party/re2/util/test.h +50 -0
  2233. data/third_party/re2/util/utf.h +44 -0
  2234. data/third_party/re2/util/util.h +42 -0
  2235. data/third_party/upb/upb/decode.c +771 -0
  2236. data/third_party/upb/upb/decode.h +68 -0
  2237. data/third_party/upb/upb/decode_fast.c +1053 -0
  2238. data/third_party/upb/upb/decode_fast.h +153 -0
  2239. data/third_party/upb/upb/decode_internal.h +193 -0
  2240. data/third_party/upb/upb/def.c +2168 -0
  2241. data/third_party/upb/upb/def.h +337 -0
  2242. data/third_party/upb/upb/def.hpp +468 -0
  2243. data/third_party/upb/upb/encode.c +511 -0
  2244. data/third_party/upb/upb/encode.h +73 -0
  2245. data/third_party/upb/upb/msg.c +397 -0
  2246. data/third_party/upb/upb/msg.h +108 -0
  2247. data/third_party/upb/upb/msg_internal.h +687 -0
  2248. data/third_party/upb/upb/port_def.inc +253 -0
  2249. data/third_party/upb/upb/port_undef.inc +61 -0
  2250. data/third_party/upb/upb/reflection.c +400 -0
  2251. data/third_party/upb/upb/reflection.h +196 -0
  2252. data/third_party/upb/upb/reflection.hpp +37 -0
  2253. data/third_party/upb/upb/table.c +842 -0
  2254. data/third_party/upb/upb/table_internal.h +351 -0
  2255. data/third_party/upb/upb/text_encode.c +449 -0
  2256. data/third_party/upb/upb/text_encode.h +64 -0
  2257. data/third_party/upb/upb/upb.c +315 -0
  2258. data/third_party/upb/upb/upb.h +367 -0
  2259. data/third_party/upb/upb/upb.hpp +112 -0
  2260. data/third_party/upb/upb/upb_internal.h +58 -0
  2261. data/third_party/xxhash/xxhash.h +5325 -0
  2262. data/third_party/zlib/adler32.c +186 -0
  2263. data/third_party/zlib/compress.c +86 -0
  2264. data/third_party/zlib/crc32.c +442 -0
  2265. data/third_party/zlib/crc32.h +441 -0
  2266. data/third_party/zlib/deflate.c +2163 -0
  2267. data/third_party/zlib/deflate.h +349 -0
  2268. data/third_party/zlib/gzclose.c +25 -0
  2269. data/third_party/zlib/gzguts.h +218 -0
  2270. data/third_party/zlib/gzlib.c +637 -0
  2271. data/third_party/zlib/gzread.c +654 -0
  2272. data/third_party/zlib/gzwrite.c +665 -0
  2273. data/third_party/zlib/infback.c +640 -0
  2274. data/third_party/zlib/inffast.c +323 -0
  2275. data/third_party/zlib/inffast.h +11 -0
  2276. data/third_party/zlib/inffixed.h +94 -0
  2277. data/third_party/zlib/inflate.c +1561 -0
  2278. data/third_party/zlib/inflate.h +125 -0
  2279. data/third_party/zlib/inftrees.c +304 -0
  2280. data/third_party/zlib/inftrees.h +62 -0
  2281. data/third_party/zlib/trees.c +1203 -0
  2282. data/third_party/zlib/trees.h +128 -0
  2283. data/third_party/zlib/uncompr.c +93 -0
  2284. data/third_party/zlib/zconf.h +534 -0
  2285. data/third_party/zlib/zlib.h +1912 -0
  2286. data/third_party/zlib/zutil.c +325 -0
  2287. data/third_party/zlib/zutil.h +271 -0
  2288. metadata +2563 -0
@@ -0,0 +1,4213 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/config/route/v3/route_components.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef ENVOY_CONFIG_ROUTE_V3_ROUTE_COMPONENTS_PROTO_UPB_H_
10
+ #define ENVOY_CONFIG_ROUTE_V3_ROUTE_COMPONENTS_PROTO_UPB_H_
11
+
12
+ #include "upb/msg_internal.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
15
+ #include "upb/encode.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ struct envoy_config_route_v3_VirtualHost;
24
+ struct envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry;
25
+ struct envoy_config_route_v3_FilterAction;
26
+ struct envoy_config_route_v3_Route;
27
+ struct envoy_config_route_v3_Route_TypedPerFilterConfigEntry;
28
+ struct envoy_config_route_v3_WeightedCluster;
29
+ struct envoy_config_route_v3_WeightedCluster_ClusterWeight;
30
+ struct envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry;
31
+ struct envoy_config_route_v3_RouteMatch;
32
+ struct envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions;
33
+ struct envoy_config_route_v3_RouteMatch_TlsContextMatchOptions;
34
+ struct envoy_config_route_v3_RouteMatch_ConnectMatcher;
35
+ struct envoy_config_route_v3_CorsPolicy;
36
+ struct envoy_config_route_v3_RouteAction;
37
+ struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy;
38
+ struct envoy_config_route_v3_RouteAction_HashPolicy;
39
+ struct envoy_config_route_v3_RouteAction_HashPolicy_Header;
40
+ struct envoy_config_route_v3_RouteAction_HashPolicy_Cookie;
41
+ struct envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties;
42
+ struct envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter;
43
+ struct envoy_config_route_v3_RouteAction_HashPolicy_FilterState;
44
+ struct envoy_config_route_v3_RouteAction_UpgradeConfig;
45
+ struct envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig;
46
+ struct envoy_config_route_v3_RouteAction_MaxStreamDuration;
47
+ struct envoy_config_route_v3_RetryPolicy;
48
+ struct envoy_config_route_v3_RetryPolicy_RetryPriority;
49
+ struct envoy_config_route_v3_RetryPolicy_RetryHostPredicate;
50
+ struct envoy_config_route_v3_RetryPolicy_RetryBackOff;
51
+ struct envoy_config_route_v3_RetryPolicy_ResetHeader;
52
+ struct envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff;
53
+ struct envoy_config_route_v3_HedgePolicy;
54
+ struct envoy_config_route_v3_RedirectAction;
55
+ struct envoy_config_route_v3_DirectResponseAction;
56
+ struct envoy_config_route_v3_NonForwardingAction;
57
+ struct envoy_config_route_v3_Decorator;
58
+ struct envoy_config_route_v3_Tracing;
59
+ struct envoy_config_route_v3_VirtualCluster;
60
+ struct envoy_config_route_v3_RateLimit;
61
+ struct envoy_config_route_v3_RateLimit_Action;
62
+ struct envoy_config_route_v3_RateLimit_Action_SourceCluster;
63
+ struct envoy_config_route_v3_RateLimit_Action_DestinationCluster;
64
+ struct envoy_config_route_v3_RateLimit_Action_RequestHeaders;
65
+ struct envoy_config_route_v3_RateLimit_Action_RemoteAddress;
66
+ struct envoy_config_route_v3_RateLimit_Action_GenericKey;
67
+ struct envoy_config_route_v3_RateLimit_Action_HeaderValueMatch;
68
+ struct envoy_config_route_v3_RateLimit_Action_DynamicMetaData;
69
+ struct envoy_config_route_v3_RateLimit_Action_MetaData;
70
+ struct envoy_config_route_v3_RateLimit_Override;
71
+ struct envoy_config_route_v3_RateLimit_Override_DynamicMetadata;
72
+ struct envoy_config_route_v3_HeaderMatcher;
73
+ struct envoy_config_route_v3_QueryParameterMatcher;
74
+ struct envoy_config_route_v3_InternalRedirectPolicy;
75
+ struct envoy_config_route_v3_FilterConfig;
76
+ typedef struct envoy_config_route_v3_VirtualHost envoy_config_route_v3_VirtualHost;
77
+ typedef struct envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry;
78
+ typedef struct envoy_config_route_v3_FilterAction envoy_config_route_v3_FilterAction;
79
+ typedef struct envoy_config_route_v3_Route envoy_config_route_v3_Route;
80
+ typedef struct envoy_config_route_v3_Route_TypedPerFilterConfigEntry envoy_config_route_v3_Route_TypedPerFilterConfigEntry;
81
+ typedef struct envoy_config_route_v3_WeightedCluster envoy_config_route_v3_WeightedCluster;
82
+ typedef struct envoy_config_route_v3_WeightedCluster_ClusterWeight envoy_config_route_v3_WeightedCluster_ClusterWeight;
83
+ typedef struct envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry;
84
+ typedef struct envoy_config_route_v3_RouteMatch envoy_config_route_v3_RouteMatch;
85
+ typedef struct envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions;
86
+ typedef struct envoy_config_route_v3_RouteMatch_TlsContextMatchOptions envoy_config_route_v3_RouteMatch_TlsContextMatchOptions;
87
+ typedef struct envoy_config_route_v3_RouteMatch_ConnectMatcher envoy_config_route_v3_RouteMatch_ConnectMatcher;
88
+ typedef struct envoy_config_route_v3_CorsPolicy envoy_config_route_v3_CorsPolicy;
89
+ typedef struct envoy_config_route_v3_RouteAction envoy_config_route_v3_RouteAction;
90
+ typedef struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy envoy_config_route_v3_RouteAction_RequestMirrorPolicy;
91
+ typedef struct envoy_config_route_v3_RouteAction_HashPolicy envoy_config_route_v3_RouteAction_HashPolicy;
92
+ typedef struct envoy_config_route_v3_RouteAction_HashPolicy_Header envoy_config_route_v3_RouteAction_HashPolicy_Header;
93
+ typedef struct envoy_config_route_v3_RouteAction_HashPolicy_Cookie envoy_config_route_v3_RouteAction_HashPolicy_Cookie;
94
+ typedef struct envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties;
95
+ typedef struct envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter;
96
+ typedef struct envoy_config_route_v3_RouteAction_HashPolicy_FilterState envoy_config_route_v3_RouteAction_HashPolicy_FilterState;
97
+ typedef struct envoy_config_route_v3_RouteAction_UpgradeConfig envoy_config_route_v3_RouteAction_UpgradeConfig;
98
+ typedef struct envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig;
99
+ typedef struct envoy_config_route_v3_RouteAction_MaxStreamDuration envoy_config_route_v3_RouteAction_MaxStreamDuration;
100
+ typedef struct envoy_config_route_v3_RetryPolicy envoy_config_route_v3_RetryPolicy;
101
+ typedef struct envoy_config_route_v3_RetryPolicy_RetryPriority envoy_config_route_v3_RetryPolicy_RetryPriority;
102
+ typedef struct envoy_config_route_v3_RetryPolicy_RetryHostPredicate envoy_config_route_v3_RetryPolicy_RetryHostPredicate;
103
+ typedef struct envoy_config_route_v3_RetryPolicy_RetryBackOff envoy_config_route_v3_RetryPolicy_RetryBackOff;
104
+ typedef struct envoy_config_route_v3_RetryPolicy_ResetHeader envoy_config_route_v3_RetryPolicy_ResetHeader;
105
+ typedef struct envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff;
106
+ typedef struct envoy_config_route_v3_HedgePolicy envoy_config_route_v3_HedgePolicy;
107
+ typedef struct envoy_config_route_v3_RedirectAction envoy_config_route_v3_RedirectAction;
108
+ typedef struct envoy_config_route_v3_DirectResponseAction envoy_config_route_v3_DirectResponseAction;
109
+ typedef struct envoy_config_route_v3_NonForwardingAction envoy_config_route_v3_NonForwardingAction;
110
+ typedef struct envoy_config_route_v3_Decorator envoy_config_route_v3_Decorator;
111
+ typedef struct envoy_config_route_v3_Tracing envoy_config_route_v3_Tracing;
112
+ typedef struct envoy_config_route_v3_VirtualCluster envoy_config_route_v3_VirtualCluster;
113
+ typedef struct envoy_config_route_v3_RateLimit envoy_config_route_v3_RateLimit;
114
+ typedef struct envoy_config_route_v3_RateLimit_Action envoy_config_route_v3_RateLimit_Action;
115
+ typedef struct envoy_config_route_v3_RateLimit_Action_SourceCluster envoy_config_route_v3_RateLimit_Action_SourceCluster;
116
+ typedef struct envoy_config_route_v3_RateLimit_Action_DestinationCluster envoy_config_route_v3_RateLimit_Action_DestinationCluster;
117
+ typedef struct envoy_config_route_v3_RateLimit_Action_RequestHeaders envoy_config_route_v3_RateLimit_Action_RequestHeaders;
118
+ typedef struct envoy_config_route_v3_RateLimit_Action_RemoteAddress envoy_config_route_v3_RateLimit_Action_RemoteAddress;
119
+ typedef struct envoy_config_route_v3_RateLimit_Action_GenericKey envoy_config_route_v3_RateLimit_Action_GenericKey;
120
+ typedef struct envoy_config_route_v3_RateLimit_Action_HeaderValueMatch envoy_config_route_v3_RateLimit_Action_HeaderValueMatch;
121
+ typedef struct envoy_config_route_v3_RateLimit_Action_DynamicMetaData envoy_config_route_v3_RateLimit_Action_DynamicMetaData;
122
+ typedef struct envoy_config_route_v3_RateLimit_Action_MetaData envoy_config_route_v3_RateLimit_Action_MetaData;
123
+ typedef struct envoy_config_route_v3_RateLimit_Override envoy_config_route_v3_RateLimit_Override;
124
+ typedef struct envoy_config_route_v3_RateLimit_Override_DynamicMetadata envoy_config_route_v3_RateLimit_Override_DynamicMetadata;
125
+ typedef struct envoy_config_route_v3_HeaderMatcher envoy_config_route_v3_HeaderMatcher;
126
+ typedef struct envoy_config_route_v3_QueryParameterMatcher envoy_config_route_v3_QueryParameterMatcher;
127
+ typedef struct envoy_config_route_v3_InternalRedirectPolicy envoy_config_route_v3_InternalRedirectPolicy;
128
+ typedef struct envoy_config_route_v3_FilterConfig envoy_config_route_v3_FilterConfig;
129
+ extern const upb_msglayout envoy_config_route_v3_VirtualHost_msginit;
130
+ extern const upb_msglayout envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry_msginit;
131
+ extern const upb_msglayout envoy_config_route_v3_FilterAction_msginit;
132
+ extern const upb_msglayout envoy_config_route_v3_Route_msginit;
133
+ extern const upb_msglayout envoy_config_route_v3_Route_TypedPerFilterConfigEntry_msginit;
134
+ extern const upb_msglayout envoy_config_route_v3_WeightedCluster_msginit;
135
+ extern const upb_msglayout envoy_config_route_v3_WeightedCluster_ClusterWeight_msginit;
136
+ extern const upb_msglayout envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry_msginit;
137
+ extern const upb_msglayout envoy_config_route_v3_RouteMatch_msginit;
138
+ extern const upb_msglayout envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_msginit;
139
+ extern const upb_msglayout envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_msginit;
140
+ extern const upb_msglayout envoy_config_route_v3_RouteMatch_ConnectMatcher_msginit;
141
+ extern const upb_msglayout envoy_config_route_v3_CorsPolicy_msginit;
142
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_msginit;
143
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_RequestMirrorPolicy_msginit;
144
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_HashPolicy_msginit;
145
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_HashPolicy_Header_msginit;
146
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_HashPolicy_Cookie_msginit;
147
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_msginit;
148
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_msginit;
149
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_HashPolicy_FilterState_msginit;
150
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_UpgradeConfig_msginit;
151
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_msginit;
152
+ extern const upb_msglayout envoy_config_route_v3_RouteAction_MaxStreamDuration_msginit;
153
+ extern const upb_msglayout envoy_config_route_v3_RetryPolicy_msginit;
154
+ extern const upb_msglayout envoy_config_route_v3_RetryPolicy_RetryPriority_msginit;
155
+ extern const upb_msglayout envoy_config_route_v3_RetryPolicy_RetryHostPredicate_msginit;
156
+ extern const upb_msglayout envoy_config_route_v3_RetryPolicy_RetryBackOff_msginit;
157
+ extern const upb_msglayout envoy_config_route_v3_RetryPolicy_ResetHeader_msginit;
158
+ extern const upb_msglayout envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_msginit;
159
+ extern const upb_msglayout envoy_config_route_v3_HedgePolicy_msginit;
160
+ extern const upb_msglayout envoy_config_route_v3_RedirectAction_msginit;
161
+ extern const upb_msglayout envoy_config_route_v3_DirectResponseAction_msginit;
162
+ extern const upb_msglayout envoy_config_route_v3_NonForwardingAction_msginit;
163
+ extern const upb_msglayout envoy_config_route_v3_Decorator_msginit;
164
+ extern const upb_msglayout envoy_config_route_v3_Tracing_msginit;
165
+ extern const upb_msglayout envoy_config_route_v3_VirtualCluster_msginit;
166
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_msginit;
167
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_msginit;
168
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_SourceCluster_msginit;
169
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_DestinationCluster_msginit;
170
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_RequestHeaders_msginit;
171
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_RemoteAddress_msginit;
172
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_GenericKey_msginit;
173
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_msginit;
174
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_DynamicMetaData_msginit;
175
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Action_MetaData_msginit;
176
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Override_msginit;
177
+ extern const upb_msglayout envoy_config_route_v3_RateLimit_Override_DynamicMetadata_msginit;
178
+ extern const upb_msglayout envoy_config_route_v3_HeaderMatcher_msginit;
179
+ extern const upb_msglayout envoy_config_route_v3_QueryParameterMatcher_msginit;
180
+ extern const upb_msglayout envoy_config_route_v3_InternalRedirectPolicy_msginit;
181
+ extern const upb_msglayout envoy_config_route_v3_FilterConfig_msginit;
182
+ struct envoy_config_core_v3_DataSource;
183
+ struct envoy_config_core_v3_HeaderValueOption;
184
+ struct envoy_config_core_v3_Metadata;
185
+ struct envoy_config_core_v3_ProxyProtocolConfig;
186
+ struct envoy_config_core_v3_RuntimeFractionalPercent;
187
+ struct envoy_config_core_v3_TypedExtensionConfig;
188
+ struct envoy_type_matcher_v3_MetadataMatcher;
189
+ struct envoy_type_matcher_v3_RegexMatchAndSubstitute;
190
+ struct envoy_type_matcher_v3_RegexMatcher;
191
+ struct envoy_type_matcher_v3_StringMatcher;
192
+ struct envoy_type_metadata_v3_MetadataKey;
193
+ struct envoy_type_tracing_v3_CustomTag;
194
+ struct envoy_type_v3_FractionalPercent;
195
+ struct envoy_type_v3_Int64Range;
196
+ struct google_protobuf_Any;
197
+ struct google_protobuf_BoolValue;
198
+ struct google_protobuf_Duration;
199
+ struct google_protobuf_UInt32Value;
200
+ extern const upb_msglayout envoy_config_core_v3_DataSource_msginit;
201
+ extern const upb_msglayout envoy_config_core_v3_HeaderValueOption_msginit;
202
+ extern const upb_msglayout envoy_config_core_v3_Metadata_msginit;
203
+ extern const upb_msglayout envoy_config_core_v3_ProxyProtocolConfig_msginit;
204
+ extern const upb_msglayout envoy_config_core_v3_RuntimeFractionalPercent_msginit;
205
+ extern const upb_msglayout envoy_config_core_v3_TypedExtensionConfig_msginit;
206
+ extern const upb_msglayout envoy_type_matcher_v3_MetadataMatcher_msginit;
207
+ extern const upb_msglayout envoy_type_matcher_v3_RegexMatchAndSubstitute_msginit;
208
+ extern const upb_msglayout envoy_type_matcher_v3_RegexMatcher_msginit;
209
+ extern const upb_msglayout envoy_type_matcher_v3_StringMatcher_msginit;
210
+ extern const upb_msglayout envoy_type_metadata_v3_MetadataKey_msginit;
211
+ extern const upb_msglayout envoy_type_tracing_v3_CustomTag_msginit;
212
+ extern const upb_msglayout envoy_type_v3_FractionalPercent_msginit;
213
+ extern const upb_msglayout envoy_type_v3_Int64Range_msginit;
214
+ extern const upb_msglayout google_protobuf_Any_msginit;
215
+ extern const upb_msglayout google_protobuf_BoolValue_msginit;
216
+ extern const upb_msglayout google_protobuf_Duration_msginit;
217
+ extern const upb_msglayout google_protobuf_UInt32Value_msginit;
218
+
219
+ typedef enum {
220
+ envoy_config_route_v3_RateLimit_Action_MetaData_DYNAMIC = 0,
221
+ envoy_config_route_v3_RateLimit_Action_MetaData_ROUTE_ENTRY = 1
222
+ } envoy_config_route_v3_RateLimit_Action_MetaData_Source;
223
+
224
+ typedef enum {
225
+ envoy_config_route_v3_RedirectAction_MOVED_PERMANENTLY = 0,
226
+ envoy_config_route_v3_RedirectAction_FOUND = 1,
227
+ envoy_config_route_v3_RedirectAction_SEE_OTHER = 2,
228
+ envoy_config_route_v3_RedirectAction_TEMPORARY_REDIRECT = 3,
229
+ envoy_config_route_v3_RedirectAction_PERMANENT_REDIRECT = 4
230
+ } envoy_config_route_v3_RedirectAction_RedirectResponseCode;
231
+
232
+ typedef enum {
233
+ envoy_config_route_v3_RetryPolicy_SECONDS = 0,
234
+ envoy_config_route_v3_RetryPolicy_UNIX_TIMESTAMP = 1
235
+ } envoy_config_route_v3_RetryPolicy_ResetHeaderFormat;
236
+
237
+ typedef enum {
238
+ envoy_config_route_v3_RouteAction_SERVICE_UNAVAILABLE = 0,
239
+ envoy_config_route_v3_RouteAction_NOT_FOUND = 1
240
+ } envoy_config_route_v3_RouteAction_ClusterNotFoundResponseCode;
241
+
242
+ typedef enum {
243
+ envoy_config_route_v3_RouteAction_PASS_THROUGH_INTERNAL_REDIRECT = 0,
244
+ envoy_config_route_v3_RouteAction_HANDLE_INTERNAL_REDIRECT = 1
245
+ } envoy_config_route_v3_RouteAction_InternalRedirectAction;
246
+
247
+ typedef enum {
248
+ envoy_config_route_v3_VirtualHost_NONE = 0,
249
+ envoy_config_route_v3_VirtualHost_EXTERNAL_ONLY = 1,
250
+ envoy_config_route_v3_VirtualHost_ALL = 2
251
+ } envoy_config_route_v3_VirtualHost_TlsRequirementType;
252
+
253
+
254
+ /* envoy.config.route.v3.VirtualHost */
255
+
256
+ UPB_INLINE envoy_config_route_v3_VirtualHost *envoy_config_route_v3_VirtualHost_new(upb_arena *arena) {
257
+ return (envoy_config_route_v3_VirtualHost *)_upb_msg_new(&envoy_config_route_v3_VirtualHost_msginit, arena);
258
+ }
259
+ UPB_INLINE envoy_config_route_v3_VirtualHost *envoy_config_route_v3_VirtualHost_parse(const char *buf, size_t size,
260
+ upb_arena *arena) {
261
+ envoy_config_route_v3_VirtualHost *ret = envoy_config_route_v3_VirtualHost_new(arena);
262
+ if (!ret) return NULL;
263
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_VirtualHost_msginit, arena)) return NULL;
264
+ return ret;
265
+ }
266
+ UPB_INLINE envoy_config_route_v3_VirtualHost *envoy_config_route_v3_VirtualHost_parse_ex(const char *buf, size_t size,
267
+ const upb_extreg *extreg, int options,
268
+ upb_arena *arena) {
269
+ envoy_config_route_v3_VirtualHost *ret = envoy_config_route_v3_VirtualHost_new(arena);
270
+ if (!ret) return NULL;
271
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_VirtualHost_msginit, extreg, options, arena)) {
272
+ return NULL;
273
+ }
274
+ return ret;
275
+ }
276
+ UPB_INLINE char *envoy_config_route_v3_VirtualHost_serialize(const envoy_config_route_v3_VirtualHost *msg, upb_arena *arena, size_t *len) {
277
+ return upb_encode(msg, &envoy_config_route_v3_VirtualHost_msginit, arena, len);
278
+ }
279
+
280
+ UPB_INLINE upb_strview envoy_config_route_v3_VirtualHost_name(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_strview); }
281
+ UPB_INLINE upb_strview const* envoy_config_route_v3_VirtualHost_domains(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(40, 72), len); }
282
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_routes(const envoy_config_route_v3_VirtualHost *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(44, 80)); }
283
+ UPB_INLINE const envoy_config_route_v3_Route* const* envoy_config_route_v3_VirtualHost_routes(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (const envoy_config_route_v3_Route* const*)_upb_array_accessor(msg, UPB_SIZE(44, 80), len); }
284
+ UPB_INLINE int32_t envoy_config_route_v3_VirtualHost_require_tls(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t); }
285
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_virtual_clusters(const envoy_config_route_v3_VirtualHost *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(48, 88)); }
286
+ UPB_INLINE const envoy_config_route_v3_VirtualCluster* const* envoy_config_route_v3_VirtualHost_virtual_clusters(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (const envoy_config_route_v3_VirtualCluster* const*)_upb_array_accessor(msg, UPB_SIZE(48, 88), len); }
287
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_rate_limits(const envoy_config_route_v3_VirtualHost *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(52, 96)); }
288
+ UPB_INLINE const envoy_config_route_v3_RateLimit* const* envoy_config_route_v3_VirtualHost_rate_limits(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (const envoy_config_route_v3_RateLimit* const*)_upb_array_accessor(msg, UPB_SIZE(52, 96), len); }
289
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_request_headers_to_add(const envoy_config_route_v3_VirtualHost *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(56, 104)); }
290
+ UPB_INLINE const struct envoy_config_core_v3_HeaderValueOption* const* envoy_config_route_v3_VirtualHost_request_headers_to_add(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (const struct envoy_config_core_v3_HeaderValueOption* const*)_upb_array_accessor(msg, UPB_SIZE(56, 104), len); }
291
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_cors(const envoy_config_route_v3_VirtualHost *msg) { return _upb_hasbit(msg, 1); }
292
+ UPB_INLINE const envoy_config_route_v3_CorsPolicy* envoy_config_route_v3_VirtualHost_cors(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const envoy_config_route_v3_CorsPolicy*); }
293
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_response_headers_to_add(const envoy_config_route_v3_VirtualHost *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(60, 112)); }
294
+ UPB_INLINE const struct envoy_config_core_v3_HeaderValueOption* const* envoy_config_route_v3_VirtualHost_response_headers_to_add(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (const struct envoy_config_core_v3_HeaderValueOption* const*)_upb_array_accessor(msg, UPB_SIZE(60, 112), len); }
295
+ UPB_INLINE upb_strview const* envoy_config_route_v3_VirtualHost_response_headers_to_remove(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(64, 120), len); }
296
+ UPB_INLINE upb_strview const* envoy_config_route_v3_VirtualHost_request_headers_to_remove(const envoy_config_route_v3_VirtualHost *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(68, 128), len); }
297
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_include_request_attempt_count(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool); }
298
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_typed_per_filter_config(const envoy_config_route_v3_VirtualHost *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(72, 136)); }
299
+ UPB_INLINE size_t envoy_config_route_v3_VirtualHost_typed_per_filter_config_size(const envoy_config_route_v3_VirtualHost *msg) {return _upb_msg_map_size(msg, UPB_SIZE(72, 136)); }
300
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_typed_per_filter_config_get(const envoy_config_route_v3_VirtualHost *msg, upb_strview key, struct google_protobuf_Any* *val) { return _upb_msg_map_get(msg, UPB_SIZE(72, 136), &key, 0, val, sizeof(*val)); }
301
+ UPB_INLINE const envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry* envoy_config_route_v3_VirtualHost_typed_per_filter_config_next(const envoy_config_route_v3_VirtualHost *msg, size_t* iter) { return (const envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry*)_upb_msg_map_next(msg, UPB_SIZE(72, 136), iter); }
302
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_retry_policy(const envoy_config_route_v3_VirtualHost *msg) { return _upb_hasbit(msg, 2); }
303
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy* envoy_config_route_v3_VirtualHost_retry_policy(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const envoy_config_route_v3_RetryPolicy*); }
304
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_hedge_policy(const envoy_config_route_v3_VirtualHost *msg) { return _upb_hasbit(msg, 3); }
305
+ UPB_INLINE const envoy_config_route_v3_HedgePolicy* envoy_config_route_v3_VirtualHost_hedge_policy(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(28, 48), const envoy_config_route_v3_HedgePolicy*); }
306
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_per_request_buffer_limit_bytes(const envoy_config_route_v3_VirtualHost *msg) { return _upb_hasbit(msg, 4); }
307
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_VirtualHost_per_request_buffer_limit_bytes(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const struct google_protobuf_UInt32Value*); }
308
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_include_attempt_count_in_response(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool); }
309
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_has_retry_policy_typed_config(const envoy_config_route_v3_VirtualHost *msg) { return _upb_hasbit(msg, 5); }
310
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_VirtualHost_retry_policy_typed_config(const envoy_config_route_v3_VirtualHost *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(36, 64), const struct google_protobuf_Any*); }
311
+
312
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_name(envoy_config_route_v3_VirtualHost *msg, upb_strview value) {
313
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_strview) = value;
314
+ }
315
+ UPB_INLINE upb_strview* envoy_config_route_v3_VirtualHost_mutable_domains(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
316
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(40, 72), len);
317
+ }
318
+ UPB_INLINE upb_strview* envoy_config_route_v3_VirtualHost_resize_domains(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
319
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(40, 72), len, UPB_SIZE(3, 4), arena);
320
+ }
321
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_add_domains(envoy_config_route_v3_VirtualHost *msg, upb_strview val, upb_arena *arena) {
322
+ return _upb_array_append_accessor2(msg, UPB_SIZE(40, 72), UPB_SIZE(3, 4), &val,
323
+ arena);
324
+ }
325
+ UPB_INLINE envoy_config_route_v3_Route** envoy_config_route_v3_VirtualHost_mutable_routes(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
326
+ return (envoy_config_route_v3_Route**)_upb_array_mutable_accessor(msg, UPB_SIZE(44, 80), len);
327
+ }
328
+ UPB_INLINE envoy_config_route_v3_Route** envoy_config_route_v3_VirtualHost_resize_routes(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
329
+ return (envoy_config_route_v3_Route**)_upb_array_resize_accessor2(msg, UPB_SIZE(44, 80), len, UPB_SIZE(2, 3), arena);
330
+ }
331
+ UPB_INLINE struct envoy_config_route_v3_Route* envoy_config_route_v3_VirtualHost_add_routes(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
332
+ struct envoy_config_route_v3_Route* sub = (struct envoy_config_route_v3_Route*)_upb_msg_new(&envoy_config_route_v3_Route_msginit, arena);
333
+ bool ok = _upb_array_append_accessor2(
334
+ msg, UPB_SIZE(44, 80), UPB_SIZE(2, 3), &sub, arena);
335
+ if (!ok) return NULL;
336
+ return sub;
337
+ }
338
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_require_tls(envoy_config_route_v3_VirtualHost *msg, int32_t value) {
339
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
340
+ }
341
+ UPB_INLINE envoy_config_route_v3_VirtualCluster** envoy_config_route_v3_VirtualHost_mutable_virtual_clusters(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
342
+ return (envoy_config_route_v3_VirtualCluster**)_upb_array_mutable_accessor(msg, UPB_SIZE(48, 88), len);
343
+ }
344
+ UPB_INLINE envoy_config_route_v3_VirtualCluster** envoy_config_route_v3_VirtualHost_resize_virtual_clusters(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
345
+ return (envoy_config_route_v3_VirtualCluster**)_upb_array_resize_accessor2(msg, UPB_SIZE(48, 88), len, UPB_SIZE(2, 3), arena);
346
+ }
347
+ UPB_INLINE struct envoy_config_route_v3_VirtualCluster* envoy_config_route_v3_VirtualHost_add_virtual_clusters(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
348
+ struct envoy_config_route_v3_VirtualCluster* sub = (struct envoy_config_route_v3_VirtualCluster*)_upb_msg_new(&envoy_config_route_v3_VirtualCluster_msginit, arena);
349
+ bool ok = _upb_array_append_accessor2(
350
+ msg, UPB_SIZE(48, 88), UPB_SIZE(2, 3), &sub, arena);
351
+ if (!ok) return NULL;
352
+ return sub;
353
+ }
354
+ UPB_INLINE envoy_config_route_v3_RateLimit** envoy_config_route_v3_VirtualHost_mutable_rate_limits(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
355
+ return (envoy_config_route_v3_RateLimit**)_upb_array_mutable_accessor(msg, UPB_SIZE(52, 96), len);
356
+ }
357
+ UPB_INLINE envoy_config_route_v3_RateLimit** envoy_config_route_v3_VirtualHost_resize_rate_limits(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
358
+ return (envoy_config_route_v3_RateLimit**)_upb_array_resize_accessor2(msg, UPB_SIZE(52, 96), len, UPB_SIZE(2, 3), arena);
359
+ }
360
+ UPB_INLINE struct envoy_config_route_v3_RateLimit* envoy_config_route_v3_VirtualHost_add_rate_limits(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
361
+ struct envoy_config_route_v3_RateLimit* sub = (struct envoy_config_route_v3_RateLimit*)_upb_msg_new(&envoy_config_route_v3_RateLimit_msginit, arena);
362
+ bool ok = _upb_array_append_accessor2(
363
+ msg, UPB_SIZE(52, 96), UPB_SIZE(2, 3), &sub, arena);
364
+ if (!ok) return NULL;
365
+ return sub;
366
+ }
367
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_VirtualHost_mutable_request_headers_to_add(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
368
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(56, 104), len);
369
+ }
370
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_VirtualHost_resize_request_headers_to_add(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
371
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_resize_accessor2(msg, UPB_SIZE(56, 104), len, UPB_SIZE(2, 3), arena);
372
+ }
373
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption* envoy_config_route_v3_VirtualHost_add_request_headers_to_add(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
374
+ struct envoy_config_core_v3_HeaderValueOption* sub = (struct envoy_config_core_v3_HeaderValueOption*)_upb_msg_new(&envoy_config_core_v3_HeaderValueOption_msginit, arena);
375
+ bool ok = _upb_array_append_accessor2(
376
+ msg, UPB_SIZE(56, 104), UPB_SIZE(2, 3), &sub, arena);
377
+ if (!ok) return NULL;
378
+ return sub;
379
+ }
380
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_cors(envoy_config_route_v3_VirtualHost *msg, envoy_config_route_v3_CorsPolicy* value) {
381
+ _upb_sethas(msg, 1);
382
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 32), envoy_config_route_v3_CorsPolicy*) = value;
383
+ }
384
+ UPB_INLINE struct envoy_config_route_v3_CorsPolicy* envoy_config_route_v3_VirtualHost_mutable_cors(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
385
+ struct envoy_config_route_v3_CorsPolicy* sub = (struct envoy_config_route_v3_CorsPolicy*)envoy_config_route_v3_VirtualHost_cors(msg);
386
+ if (sub == NULL) {
387
+ sub = (struct envoy_config_route_v3_CorsPolicy*)_upb_msg_new(&envoy_config_route_v3_CorsPolicy_msginit, arena);
388
+ if (!sub) return NULL;
389
+ envoy_config_route_v3_VirtualHost_set_cors(msg, sub);
390
+ }
391
+ return sub;
392
+ }
393
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_VirtualHost_mutable_response_headers_to_add(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
394
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(60, 112), len);
395
+ }
396
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_VirtualHost_resize_response_headers_to_add(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
397
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_resize_accessor2(msg, UPB_SIZE(60, 112), len, UPB_SIZE(2, 3), arena);
398
+ }
399
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption* envoy_config_route_v3_VirtualHost_add_response_headers_to_add(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
400
+ struct envoy_config_core_v3_HeaderValueOption* sub = (struct envoy_config_core_v3_HeaderValueOption*)_upb_msg_new(&envoy_config_core_v3_HeaderValueOption_msginit, arena);
401
+ bool ok = _upb_array_append_accessor2(
402
+ msg, UPB_SIZE(60, 112), UPB_SIZE(2, 3), &sub, arena);
403
+ if (!ok) return NULL;
404
+ return sub;
405
+ }
406
+ UPB_INLINE upb_strview* envoy_config_route_v3_VirtualHost_mutable_response_headers_to_remove(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
407
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(64, 120), len);
408
+ }
409
+ UPB_INLINE upb_strview* envoy_config_route_v3_VirtualHost_resize_response_headers_to_remove(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
410
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(64, 120), len, UPB_SIZE(3, 4), arena);
411
+ }
412
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_add_response_headers_to_remove(envoy_config_route_v3_VirtualHost *msg, upb_strview val, upb_arena *arena) {
413
+ return _upb_array_append_accessor2(msg, UPB_SIZE(64, 120), UPB_SIZE(3, 4), &val,
414
+ arena);
415
+ }
416
+ UPB_INLINE upb_strview* envoy_config_route_v3_VirtualHost_mutable_request_headers_to_remove(envoy_config_route_v3_VirtualHost *msg, size_t *len) {
417
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(68, 128), len);
418
+ }
419
+ UPB_INLINE upb_strview* envoy_config_route_v3_VirtualHost_resize_request_headers_to_remove(envoy_config_route_v3_VirtualHost *msg, size_t len, upb_arena *arena) {
420
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(68, 128), len, UPB_SIZE(3, 4), arena);
421
+ }
422
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_add_request_headers_to_remove(envoy_config_route_v3_VirtualHost *msg, upb_strview val, upb_arena *arena) {
423
+ return _upb_array_append_accessor2(msg, UPB_SIZE(68, 128), UPB_SIZE(3, 4), &val,
424
+ arena);
425
+ }
426
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_include_request_attempt_count(envoy_config_route_v3_VirtualHost *msg, bool value) {
427
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool) = value;
428
+ }
429
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_typed_per_filter_config_clear(envoy_config_route_v3_VirtualHost *msg) { _upb_msg_map_clear(msg, UPB_SIZE(72, 136)); }
430
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_typed_per_filter_config_set(envoy_config_route_v3_VirtualHost *msg, upb_strview key, struct google_protobuf_Any* val, upb_arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(72, 136), &key, 0, &val, sizeof(val), a); }
431
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_typed_per_filter_config_delete(envoy_config_route_v3_VirtualHost *msg, upb_strview key) { return _upb_msg_map_delete(msg, UPB_SIZE(72, 136), &key, 0); }
432
+ UPB_INLINE envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry* envoy_config_route_v3_VirtualHost_typed_per_filter_config_nextmutable(envoy_config_route_v3_VirtualHost *msg, size_t* iter) { return (envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry*)_upb_msg_map_next(msg, UPB_SIZE(72, 136), iter); }
433
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_retry_policy(envoy_config_route_v3_VirtualHost *msg, envoy_config_route_v3_RetryPolicy* value) {
434
+ _upb_sethas(msg, 2);
435
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), envoy_config_route_v3_RetryPolicy*) = value;
436
+ }
437
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy* envoy_config_route_v3_VirtualHost_mutable_retry_policy(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
438
+ struct envoy_config_route_v3_RetryPolicy* sub = (struct envoy_config_route_v3_RetryPolicy*)envoy_config_route_v3_VirtualHost_retry_policy(msg);
439
+ if (sub == NULL) {
440
+ sub = (struct envoy_config_route_v3_RetryPolicy*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_msginit, arena);
441
+ if (!sub) return NULL;
442
+ envoy_config_route_v3_VirtualHost_set_retry_policy(msg, sub);
443
+ }
444
+ return sub;
445
+ }
446
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_hedge_policy(envoy_config_route_v3_VirtualHost *msg, envoy_config_route_v3_HedgePolicy* value) {
447
+ _upb_sethas(msg, 3);
448
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 48), envoy_config_route_v3_HedgePolicy*) = value;
449
+ }
450
+ UPB_INLINE struct envoy_config_route_v3_HedgePolicy* envoy_config_route_v3_VirtualHost_mutable_hedge_policy(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
451
+ struct envoy_config_route_v3_HedgePolicy* sub = (struct envoy_config_route_v3_HedgePolicy*)envoy_config_route_v3_VirtualHost_hedge_policy(msg);
452
+ if (sub == NULL) {
453
+ sub = (struct envoy_config_route_v3_HedgePolicy*)_upb_msg_new(&envoy_config_route_v3_HedgePolicy_msginit, arena);
454
+ if (!sub) return NULL;
455
+ envoy_config_route_v3_VirtualHost_set_hedge_policy(msg, sub);
456
+ }
457
+ return sub;
458
+ }
459
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_per_request_buffer_limit_bytes(envoy_config_route_v3_VirtualHost *msg, struct google_protobuf_UInt32Value* value) {
460
+ _upb_sethas(msg, 4);
461
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), struct google_protobuf_UInt32Value*) = value;
462
+ }
463
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_VirtualHost_mutable_per_request_buffer_limit_bytes(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
464
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_VirtualHost_per_request_buffer_limit_bytes(msg);
465
+ if (sub == NULL) {
466
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
467
+ if (!sub) return NULL;
468
+ envoy_config_route_v3_VirtualHost_set_per_request_buffer_limit_bytes(msg, sub);
469
+ }
470
+ return sub;
471
+ }
472
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_include_attempt_count_in_response(envoy_config_route_v3_VirtualHost *msg, bool value) {
473
+ *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool) = value;
474
+ }
475
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_set_retry_policy_typed_config(envoy_config_route_v3_VirtualHost *msg, struct google_protobuf_Any* value) {
476
+ _upb_sethas(msg, 5);
477
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 64), struct google_protobuf_Any*) = value;
478
+ }
479
+ UPB_INLINE struct google_protobuf_Any* envoy_config_route_v3_VirtualHost_mutable_retry_policy_typed_config(envoy_config_route_v3_VirtualHost *msg, upb_arena *arena) {
480
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_route_v3_VirtualHost_retry_policy_typed_config(msg);
481
+ if (sub == NULL) {
482
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
483
+ if (!sub) return NULL;
484
+ envoy_config_route_v3_VirtualHost_set_retry_policy_typed_config(msg, sub);
485
+ }
486
+ return sub;
487
+ }
488
+
489
+ /* envoy.config.route.v3.VirtualHost.TypedPerFilterConfigEntry */
490
+
491
+ UPB_INLINE upb_strview envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry_key(const envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry *msg) {
492
+ upb_strview ret;
493
+ _upb_msg_map_key(msg, &ret, 0);
494
+ return ret;
495
+ }
496
+ UPB_INLINE bool envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry_has_value(const envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
497
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry_value(const envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry *msg) {
498
+ struct google_protobuf_Any* ret;
499
+ _upb_msg_map_value(msg, &ret, sizeof(ret));
500
+ return ret;
501
+ }
502
+
503
+ UPB_INLINE void envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry_set_value(envoy_config_route_v3_VirtualHost_TypedPerFilterConfigEntry *msg, struct google_protobuf_Any* value) {
504
+ _upb_msg_map_set_value(msg, &value, sizeof(struct google_protobuf_Any*));
505
+ }
506
+
507
+ /* envoy.config.route.v3.FilterAction */
508
+
509
+ UPB_INLINE envoy_config_route_v3_FilterAction *envoy_config_route_v3_FilterAction_new(upb_arena *arena) {
510
+ return (envoy_config_route_v3_FilterAction *)_upb_msg_new(&envoy_config_route_v3_FilterAction_msginit, arena);
511
+ }
512
+ UPB_INLINE envoy_config_route_v3_FilterAction *envoy_config_route_v3_FilterAction_parse(const char *buf, size_t size,
513
+ upb_arena *arena) {
514
+ envoy_config_route_v3_FilterAction *ret = envoy_config_route_v3_FilterAction_new(arena);
515
+ if (!ret) return NULL;
516
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_FilterAction_msginit, arena)) return NULL;
517
+ return ret;
518
+ }
519
+ UPB_INLINE envoy_config_route_v3_FilterAction *envoy_config_route_v3_FilterAction_parse_ex(const char *buf, size_t size,
520
+ const upb_extreg *extreg, int options,
521
+ upb_arena *arena) {
522
+ envoy_config_route_v3_FilterAction *ret = envoy_config_route_v3_FilterAction_new(arena);
523
+ if (!ret) return NULL;
524
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_FilterAction_msginit, extreg, options, arena)) {
525
+ return NULL;
526
+ }
527
+ return ret;
528
+ }
529
+ UPB_INLINE char *envoy_config_route_v3_FilterAction_serialize(const envoy_config_route_v3_FilterAction *msg, upb_arena *arena, size_t *len) {
530
+ return upb_encode(msg, &envoy_config_route_v3_FilterAction_msginit, arena, len);
531
+ }
532
+
533
+ UPB_INLINE bool envoy_config_route_v3_FilterAction_has_action(const envoy_config_route_v3_FilterAction *msg) { return _upb_hasbit(msg, 1); }
534
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_FilterAction_action(const envoy_config_route_v3_FilterAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Any*); }
535
+
536
+ UPB_INLINE void envoy_config_route_v3_FilterAction_set_action(envoy_config_route_v3_FilterAction *msg, struct google_protobuf_Any* value) {
537
+ _upb_sethas(msg, 1);
538
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Any*) = value;
539
+ }
540
+ UPB_INLINE struct google_protobuf_Any* envoy_config_route_v3_FilterAction_mutable_action(envoy_config_route_v3_FilterAction *msg, upb_arena *arena) {
541
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_route_v3_FilterAction_action(msg);
542
+ if (sub == NULL) {
543
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
544
+ if (!sub) return NULL;
545
+ envoy_config_route_v3_FilterAction_set_action(msg, sub);
546
+ }
547
+ return sub;
548
+ }
549
+
550
+ /* envoy.config.route.v3.Route */
551
+
552
+ UPB_INLINE envoy_config_route_v3_Route *envoy_config_route_v3_Route_new(upb_arena *arena) {
553
+ return (envoy_config_route_v3_Route *)_upb_msg_new(&envoy_config_route_v3_Route_msginit, arena);
554
+ }
555
+ UPB_INLINE envoy_config_route_v3_Route *envoy_config_route_v3_Route_parse(const char *buf, size_t size,
556
+ upb_arena *arena) {
557
+ envoy_config_route_v3_Route *ret = envoy_config_route_v3_Route_new(arena);
558
+ if (!ret) return NULL;
559
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_Route_msginit, arena)) return NULL;
560
+ return ret;
561
+ }
562
+ UPB_INLINE envoy_config_route_v3_Route *envoy_config_route_v3_Route_parse_ex(const char *buf, size_t size,
563
+ const upb_extreg *extreg, int options,
564
+ upb_arena *arena) {
565
+ envoy_config_route_v3_Route *ret = envoy_config_route_v3_Route_new(arena);
566
+ if (!ret) return NULL;
567
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_Route_msginit, extreg, options, arena)) {
568
+ return NULL;
569
+ }
570
+ return ret;
571
+ }
572
+ UPB_INLINE char *envoy_config_route_v3_Route_serialize(const envoy_config_route_v3_Route *msg, upb_arena *arena, size_t *len) {
573
+ return upb_encode(msg, &envoy_config_route_v3_Route_msginit, arena, len);
574
+ }
575
+
576
+ typedef enum {
577
+ envoy_config_route_v3_Route_action_route = 2,
578
+ envoy_config_route_v3_Route_action_redirect = 3,
579
+ envoy_config_route_v3_Route_action_direct_response = 7,
580
+ envoy_config_route_v3_Route_action_filter_action = 17,
581
+ envoy_config_route_v3_Route_action_non_forwarding_action = 18,
582
+ envoy_config_route_v3_Route_action_NOT_SET = 0
583
+ } envoy_config_route_v3_Route_action_oneofcases;
584
+ UPB_INLINE envoy_config_route_v3_Route_action_oneofcases envoy_config_route_v3_Route_action_case(const envoy_config_route_v3_Route* msg) { return (envoy_config_route_v3_Route_action_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(56, 112), int32_t); }
585
+
586
+ UPB_INLINE bool envoy_config_route_v3_Route_has_match(const envoy_config_route_v3_Route *msg) { return _upb_hasbit(msg, 1); }
587
+ UPB_INLINE const envoy_config_route_v3_RouteMatch* envoy_config_route_v3_Route_match(const envoy_config_route_v3_Route *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const envoy_config_route_v3_RouteMatch*); }
588
+ UPB_INLINE bool envoy_config_route_v3_Route_has_route(const envoy_config_route_v3_Route *msg) { return _upb_getoneofcase(msg, UPB_SIZE(56, 112)) == 2; }
589
+ UPB_INLINE const envoy_config_route_v3_RouteAction* envoy_config_route_v3_Route_route(const envoy_config_route_v3_Route *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteAction*, UPB_SIZE(52, 104), UPB_SIZE(56, 112), 2, NULL); }
590
+ UPB_INLINE bool envoy_config_route_v3_Route_has_redirect(const envoy_config_route_v3_Route *msg) { return _upb_getoneofcase(msg, UPB_SIZE(56, 112)) == 3; }
591
+ UPB_INLINE const envoy_config_route_v3_RedirectAction* envoy_config_route_v3_Route_redirect(const envoy_config_route_v3_Route *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RedirectAction*, UPB_SIZE(52, 104), UPB_SIZE(56, 112), 3, NULL); }
592
+ UPB_INLINE bool envoy_config_route_v3_Route_has_metadata(const envoy_config_route_v3_Route *msg) { return _upb_hasbit(msg, 2); }
593
+ UPB_INLINE const struct envoy_config_core_v3_Metadata* envoy_config_route_v3_Route_metadata(const envoy_config_route_v3_Route *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const struct envoy_config_core_v3_Metadata*); }
594
+ UPB_INLINE bool envoy_config_route_v3_Route_has_decorator(const envoy_config_route_v3_Route *msg) { return _upb_hasbit(msg, 3); }
595
+ UPB_INLINE const envoy_config_route_v3_Decorator* envoy_config_route_v3_Route_decorator(const envoy_config_route_v3_Route *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), const envoy_config_route_v3_Decorator*); }
596
+ UPB_INLINE bool envoy_config_route_v3_Route_has_direct_response(const envoy_config_route_v3_Route *msg) { return _upb_getoneofcase(msg, UPB_SIZE(56, 112)) == 7; }
597
+ UPB_INLINE const envoy_config_route_v3_DirectResponseAction* envoy_config_route_v3_Route_direct_response(const envoy_config_route_v3_Route *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_DirectResponseAction*, UPB_SIZE(52, 104), UPB_SIZE(56, 112), 7, NULL); }
598
+ UPB_INLINE bool envoy_config_route_v3_Route_has_request_headers_to_add(const envoy_config_route_v3_Route *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(32, 64)); }
599
+ UPB_INLINE const struct envoy_config_core_v3_HeaderValueOption* const* envoy_config_route_v3_Route_request_headers_to_add(const envoy_config_route_v3_Route *msg, size_t *len) { return (const struct envoy_config_core_v3_HeaderValueOption* const*)_upb_array_accessor(msg, UPB_SIZE(32, 64), len); }
600
+ UPB_INLINE bool envoy_config_route_v3_Route_has_response_headers_to_add(const envoy_config_route_v3_Route *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(36, 72)); }
601
+ UPB_INLINE const struct envoy_config_core_v3_HeaderValueOption* const* envoy_config_route_v3_Route_response_headers_to_add(const envoy_config_route_v3_Route *msg, size_t *len) { return (const struct envoy_config_core_v3_HeaderValueOption* const*)_upb_array_accessor(msg, UPB_SIZE(36, 72), len); }
602
+ UPB_INLINE upb_strview const* envoy_config_route_v3_Route_response_headers_to_remove(const envoy_config_route_v3_Route *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(40, 80), len); }
603
+ UPB_INLINE upb_strview const* envoy_config_route_v3_Route_request_headers_to_remove(const envoy_config_route_v3_Route *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(44, 88), len); }
604
+ UPB_INLINE bool envoy_config_route_v3_Route_has_typed_per_filter_config(const envoy_config_route_v3_Route *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(48, 96)); }
605
+ UPB_INLINE size_t envoy_config_route_v3_Route_typed_per_filter_config_size(const envoy_config_route_v3_Route *msg) {return _upb_msg_map_size(msg, UPB_SIZE(48, 96)); }
606
+ UPB_INLINE bool envoy_config_route_v3_Route_typed_per_filter_config_get(const envoy_config_route_v3_Route *msg, upb_strview key, struct google_protobuf_Any* *val) { return _upb_msg_map_get(msg, UPB_SIZE(48, 96), &key, 0, val, sizeof(*val)); }
607
+ UPB_INLINE const envoy_config_route_v3_Route_TypedPerFilterConfigEntry* envoy_config_route_v3_Route_typed_per_filter_config_next(const envoy_config_route_v3_Route *msg, size_t* iter) { return (const envoy_config_route_v3_Route_TypedPerFilterConfigEntry*)_upb_msg_map_next(msg, UPB_SIZE(48, 96), iter); }
608
+ UPB_INLINE upb_strview envoy_config_route_v3_Route_name(const envoy_config_route_v3_Route *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
609
+ UPB_INLINE bool envoy_config_route_v3_Route_has_tracing(const envoy_config_route_v3_Route *msg) { return _upb_hasbit(msg, 4); }
610
+ UPB_INLINE const envoy_config_route_v3_Tracing* envoy_config_route_v3_Route_tracing(const envoy_config_route_v3_Route *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(24, 48), const envoy_config_route_v3_Tracing*); }
611
+ UPB_INLINE bool envoy_config_route_v3_Route_has_per_request_buffer_limit_bytes(const envoy_config_route_v3_Route *msg) { return _upb_hasbit(msg, 5); }
612
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_Route_per_request_buffer_limit_bytes(const envoy_config_route_v3_Route *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(28, 56), const struct google_protobuf_UInt32Value*); }
613
+ UPB_INLINE bool envoy_config_route_v3_Route_has_filter_action(const envoy_config_route_v3_Route *msg) { return _upb_getoneofcase(msg, UPB_SIZE(56, 112)) == 17; }
614
+ UPB_INLINE const envoy_config_route_v3_FilterAction* envoy_config_route_v3_Route_filter_action(const envoy_config_route_v3_Route *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_FilterAction*, UPB_SIZE(52, 104), UPB_SIZE(56, 112), 17, NULL); }
615
+ UPB_INLINE bool envoy_config_route_v3_Route_has_non_forwarding_action(const envoy_config_route_v3_Route *msg) { return _upb_getoneofcase(msg, UPB_SIZE(56, 112)) == 18; }
616
+ UPB_INLINE const envoy_config_route_v3_NonForwardingAction* envoy_config_route_v3_Route_non_forwarding_action(const envoy_config_route_v3_Route *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_NonForwardingAction*, UPB_SIZE(52, 104), UPB_SIZE(56, 112), 18, NULL); }
617
+
618
+ UPB_INLINE void envoy_config_route_v3_Route_set_match(envoy_config_route_v3_Route *msg, envoy_config_route_v3_RouteMatch* value) {
619
+ _upb_sethas(msg, 1);
620
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), envoy_config_route_v3_RouteMatch*) = value;
621
+ }
622
+ UPB_INLINE struct envoy_config_route_v3_RouteMatch* envoy_config_route_v3_Route_mutable_match(envoy_config_route_v3_Route *msg, upb_arena *arena) {
623
+ struct envoy_config_route_v3_RouteMatch* sub = (struct envoy_config_route_v3_RouteMatch*)envoy_config_route_v3_Route_match(msg);
624
+ if (sub == NULL) {
625
+ sub = (struct envoy_config_route_v3_RouteMatch*)_upb_msg_new(&envoy_config_route_v3_RouteMatch_msginit, arena);
626
+ if (!sub) return NULL;
627
+ envoy_config_route_v3_Route_set_match(msg, sub);
628
+ }
629
+ return sub;
630
+ }
631
+ UPB_INLINE void envoy_config_route_v3_Route_set_route(envoy_config_route_v3_Route *msg, envoy_config_route_v3_RouteAction* value) {
632
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteAction*, UPB_SIZE(52, 104), value, UPB_SIZE(56, 112), 2);
633
+ }
634
+ UPB_INLINE struct envoy_config_route_v3_RouteAction* envoy_config_route_v3_Route_mutable_route(envoy_config_route_v3_Route *msg, upb_arena *arena) {
635
+ struct envoy_config_route_v3_RouteAction* sub = (struct envoy_config_route_v3_RouteAction*)envoy_config_route_v3_Route_route(msg);
636
+ if (sub == NULL) {
637
+ sub = (struct envoy_config_route_v3_RouteAction*)_upb_msg_new(&envoy_config_route_v3_RouteAction_msginit, arena);
638
+ if (!sub) return NULL;
639
+ envoy_config_route_v3_Route_set_route(msg, sub);
640
+ }
641
+ return sub;
642
+ }
643
+ UPB_INLINE void envoy_config_route_v3_Route_set_redirect(envoy_config_route_v3_Route *msg, envoy_config_route_v3_RedirectAction* value) {
644
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RedirectAction*, UPB_SIZE(52, 104), value, UPB_SIZE(56, 112), 3);
645
+ }
646
+ UPB_INLINE struct envoy_config_route_v3_RedirectAction* envoy_config_route_v3_Route_mutable_redirect(envoy_config_route_v3_Route *msg, upb_arena *arena) {
647
+ struct envoy_config_route_v3_RedirectAction* sub = (struct envoy_config_route_v3_RedirectAction*)envoy_config_route_v3_Route_redirect(msg);
648
+ if (sub == NULL) {
649
+ sub = (struct envoy_config_route_v3_RedirectAction*)_upb_msg_new(&envoy_config_route_v3_RedirectAction_msginit, arena);
650
+ if (!sub) return NULL;
651
+ envoy_config_route_v3_Route_set_redirect(msg, sub);
652
+ }
653
+ return sub;
654
+ }
655
+ UPB_INLINE void envoy_config_route_v3_Route_set_metadata(envoy_config_route_v3_Route *msg, struct envoy_config_core_v3_Metadata* value) {
656
+ _upb_sethas(msg, 2);
657
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 32), struct envoy_config_core_v3_Metadata*) = value;
658
+ }
659
+ UPB_INLINE struct envoy_config_core_v3_Metadata* envoy_config_route_v3_Route_mutable_metadata(envoy_config_route_v3_Route *msg, upb_arena *arena) {
660
+ struct envoy_config_core_v3_Metadata* sub = (struct envoy_config_core_v3_Metadata*)envoy_config_route_v3_Route_metadata(msg);
661
+ if (sub == NULL) {
662
+ sub = (struct envoy_config_core_v3_Metadata*)_upb_msg_new(&envoy_config_core_v3_Metadata_msginit, arena);
663
+ if (!sub) return NULL;
664
+ envoy_config_route_v3_Route_set_metadata(msg, sub);
665
+ }
666
+ return sub;
667
+ }
668
+ UPB_INLINE void envoy_config_route_v3_Route_set_decorator(envoy_config_route_v3_Route *msg, envoy_config_route_v3_Decorator* value) {
669
+ _upb_sethas(msg, 3);
670
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), envoy_config_route_v3_Decorator*) = value;
671
+ }
672
+ UPB_INLINE struct envoy_config_route_v3_Decorator* envoy_config_route_v3_Route_mutable_decorator(envoy_config_route_v3_Route *msg, upb_arena *arena) {
673
+ struct envoy_config_route_v3_Decorator* sub = (struct envoy_config_route_v3_Decorator*)envoy_config_route_v3_Route_decorator(msg);
674
+ if (sub == NULL) {
675
+ sub = (struct envoy_config_route_v3_Decorator*)_upb_msg_new(&envoy_config_route_v3_Decorator_msginit, arena);
676
+ if (!sub) return NULL;
677
+ envoy_config_route_v3_Route_set_decorator(msg, sub);
678
+ }
679
+ return sub;
680
+ }
681
+ UPB_INLINE void envoy_config_route_v3_Route_set_direct_response(envoy_config_route_v3_Route *msg, envoy_config_route_v3_DirectResponseAction* value) {
682
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_DirectResponseAction*, UPB_SIZE(52, 104), value, UPB_SIZE(56, 112), 7);
683
+ }
684
+ UPB_INLINE struct envoy_config_route_v3_DirectResponseAction* envoy_config_route_v3_Route_mutable_direct_response(envoy_config_route_v3_Route *msg, upb_arena *arena) {
685
+ struct envoy_config_route_v3_DirectResponseAction* sub = (struct envoy_config_route_v3_DirectResponseAction*)envoy_config_route_v3_Route_direct_response(msg);
686
+ if (sub == NULL) {
687
+ sub = (struct envoy_config_route_v3_DirectResponseAction*)_upb_msg_new(&envoy_config_route_v3_DirectResponseAction_msginit, arena);
688
+ if (!sub) return NULL;
689
+ envoy_config_route_v3_Route_set_direct_response(msg, sub);
690
+ }
691
+ return sub;
692
+ }
693
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_Route_mutable_request_headers_to_add(envoy_config_route_v3_Route *msg, size_t *len) {
694
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(32, 64), len);
695
+ }
696
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_Route_resize_request_headers_to_add(envoy_config_route_v3_Route *msg, size_t len, upb_arena *arena) {
697
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_resize_accessor2(msg, UPB_SIZE(32, 64), len, UPB_SIZE(2, 3), arena);
698
+ }
699
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption* envoy_config_route_v3_Route_add_request_headers_to_add(envoy_config_route_v3_Route *msg, upb_arena *arena) {
700
+ struct envoy_config_core_v3_HeaderValueOption* sub = (struct envoy_config_core_v3_HeaderValueOption*)_upb_msg_new(&envoy_config_core_v3_HeaderValueOption_msginit, arena);
701
+ bool ok = _upb_array_append_accessor2(
702
+ msg, UPB_SIZE(32, 64), UPB_SIZE(2, 3), &sub, arena);
703
+ if (!ok) return NULL;
704
+ return sub;
705
+ }
706
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_Route_mutable_response_headers_to_add(envoy_config_route_v3_Route *msg, size_t *len) {
707
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(36, 72), len);
708
+ }
709
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_Route_resize_response_headers_to_add(envoy_config_route_v3_Route *msg, size_t len, upb_arena *arena) {
710
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_resize_accessor2(msg, UPB_SIZE(36, 72), len, UPB_SIZE(2, 3), arena);
711
+ }
712
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption* envoy_config_route_v3_Route_add_response_headers_to_add(envoy_config_route_v3_Route *msg, upb_arena *arena) {
713
+ struct envoy_config_core_v3_HeaderValueOption* sub = (struct envoy_config_core_v3_HeaderValueOption*)_upb_msg_new(&envoy_config_core_v3_HeaderValueOption_msginit, arena);
714
+ bool ok = _upb_array_append_accessor2(
715
+ msg, UPB_SIZE(36, 72), UPB_SIZE(2, 3), &sub, arena);
716
+ if (!ok) return NULL;
717
+ return sub;
718
+ }
719
+ UPB_INLINE upb_strview* envoy_config_route_v3_Route_mutable_response_headers_to_remove(envoy_config_route_v3_Route *msg, size_t *len) {
720
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(40, 80), len);
721
+ }
722
+ UPB_INLINE upb_strview* envoy_config_route_v3_Route_resize_response_headers_to_remove(envoy_config_route_v3_Route *msg, size_t len, upb_arena *arena) {
723
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(40, 80), len, UPB_SIZE(3, 4), arena);
724
+ }
725
+ UPB_INLINE bool envoy_config_route_v3_Route_add_response_headers_to_remove(envoy_config_route_v3_Route *msg, upb_strview val, upb_arena *arena) {
726
+ return _upb_array_append_accessor2(msg, UPB_SIZE(40, 80), UPB_SIZE(3, 4), &val,
727
+ arena);
728
+ }
729
+ UPB_INLINE upb_strview* envoy_config_route_v3_Route_mutable_request_headers_to_remove(envoy_config_route_v3_Route *msg, size_t *len) {
730
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(44, 88), len);
731
+ }
732
+ UPB_INLINE upb_strview* envoy_config_route_v3_Route_resize_request_headers_to_remove(envoy_config_route_v3_Route *msg, size_t len, upb_arena *arena) {
733
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(44, 88), len, UPB_SIZE(3, 4), arena);
734
+ }
735
+ UPB_INLINE bool envoy_config_route_v3_Route_add_request_headers_to_remove(envoy_config_route_v3_Route *msg, upb_strview val, upb_arena *arena) {
736
+ return _upb_array_append_accessor2(msg, UPB_SIZE(44, 88), UPB_SIZE(3, 4), &val,
737
+ arena);
738
+ }
739
+ UPB_INLINE void envoy_config_route_v3_Route_typed_per_filter_config_clear(envoy_config_route_v3_Route *msg) { _upb_msg_map_clear(msg, UPB_SIZE(48, 96)); }
740
+ UPB_INLINE bool envoy_config_route_v3_Route_typed_per_filter_config_set(envoy_config_route_v3_Route *msg, upb_strview key, struct google_protobuf_Any* val, upb_arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(48, 96), &key, 0, &val, sizeof(val), a); }
741
+ UPB_INLINE bool envoy_config_route_v3_Route_typed_per_filter_config_delete(envoy_config_route_v3_Route *msg, upb_strview key) { return _upb_msg_map_delete(msg, UPB_SIZE(48, 96), &key, 0); }
742
+ UPB_INLINE envoy_config_route_v3_Route_TypedPerFilterConfigEntry* envoy_config_route_v3_Route_typed_per_filter_config_nextmutable(envoy_config_route_v3_Route *msg, size_t* iter) { return (envoy_config_route_v3_Route_TypedPerFilterConfigEntry*)_upb_msg_map_next(msg, UPB_SIZE(48, 96), iter); }
743
+ UPB_INLINE void envoy_config_route_v3_Route_set_name(envoy_config_route_v3_Route *msg, upb_strview value) {
744
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
745
+ }
746
+ UPB_INLINE void envoy_config_route_v3_Route_set_tracing(envoy_config_route_v3_Route *msg, envoy_config_route_v3_Tracing* value) {
747
+ _upb_sethas(msg, 4);
748
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 48), envoy_config_route_v3_Tracing*) = value;
749
+ }
750
+ UPB_INLINE struct envoy_config_route_v3_Tracing* envoy_config_route_v3_Route_mutable_tracing(envoy_config_route_v3_Route *msg, upb_arena *arena) {
751
+ struct envoy_config_route_v3_Tracing* sub = (struct envoy_config_route_v3_Tracing*)envoy_config_route_v3_Route_tracing(msg);
752
+ if (sub == NULL) {
753
+ sub = (struct envoy_config_route_v3_Tracing*)_upb_msg_new(&envoy_config_route_v3_Tracing_msginit, arena);
754
+ if (!sub) return NULL;
755
+ envoy_config_route_v3_Route_set_tracing(msg, sub);
756
+ }
757
+ return sub;
758
+ }
759
+ UPB_INLINE void envoy_config_route_v3_Route_set_per_request_buffer_limit_bytes(envoy_config_route_v3_Route *msg, struct google_protobuf_UInt32Value* value) {
760
+ _upb_sethas(msg, 5);
761
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 56), struct google_protobuf_UInt32Value*) = value;
762
+ }
763
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_Route_mutable_per_request_buffer_limit_bytes(envoy_config_route_v3_Route *msg, upb_arena *arena) {
764
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_Route_per_request_buffer_limit_bytes(msg);
765
+ if (sub == NULL) {
766
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
767
+ if (!sub) return NULL;
768
+ envoy_config_route_v3_Route_set_per_request_buffer_limit_bytes(msg, sub);
769
+ }
770
+ return sub;
771
+ }
772
+ UPB_INLINE void envoy_config_route_v3_Route_set_filter_action(envoy_config_route_v3_Route *msg, envoy_config_route_v3_FilterAction* value) {
773
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_FilterAction*, UPB_SIZE(52, 104), value, UPB_SIZE(56, 112), 17);
774
+ }
775
+ UPB_INLINE struct envoy_config_route_v3_FilterAction* envoy_config_route_v3_Route_mutable_filter_action(envoy_config_route_v3_Route *msg, upb_arena *arena) {
776
+ struct envoy_config_route_v3_FilterAction* sub = (struct envoy_config_route_v3_FilterAction*)envoy_config_route_v3_Route_filter_action(msg);
777
+ if (sub == NULL) {
778
+ sub = (struct envoy_config_route_v3_FilterAction*)_upb_msg_new(&envoy_config_route_v3_FilterAction_msginit, arena);
779
+ if (!sub) return NULL;
780
+ envoy_config_route_v3_Route_set_filter_action(msg, sub);
781
+ }
782
+ return sub;
783
+ }
784
+ UPB_INLINE void envoy_config_route_v3_Route_set_non_forwarding_action(envoy_config_route_v3_Route *msg, envoy_config_route_v3_NonForwardingAction* value) {
785
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_NonForwardingAction*, UPB_SIZE(52, 104), value, UPB_SIZE(56, 112), 18);
786
+ }
787
+ UPB_INLINE struct envoy_config_route_v3_NonForwardingAction* envoy_config_route_v3_Route_mutable_non_forwarding_action(envoy_config_route_v3_Route *msg, upb_arena *arena) {
788
+ struct envoy_config_route_v3_NonForwardingAction* sub = (struct envoy_config_route_v3_NonForwardingAction*)envoy_config_route_v3_Route_non_forwarding_action(msg);
789
+ if (sub == NULL) {
790
+ sub = (struct envoy_config_route_v3_NonForwardingAction*)_upb_msg_new(&envoy_config_route_v3_NonForwardingAction_msginit, arena);
791
+ if (!sub) return NULL;
792
+ envoy_config_route_v3_Route_set_non_forwarding_action(msg, sub);
793
+ }
794
+ return sub;
795
+ }
796
+
797
+ /* envoy.config.route.v3.Route.TypedPerFilterConfigEntry */
798
+
799
+ UPB_INLINE upb_strview envoy_config_route_v3_Route_TypedPerFilterConfigEntry_key(const envoy_config_route_v3_Route_TypedPerFilterConfigEntry *msg) {
800
+ upb_strview ret;
801
+ _upb_msg_map_key(msg, &ret, 0);
802
+ return ret;
803
+ }
804
+ UPB_INLINE bool envoy_config_route_v3_Route_TypedPerFilterConfigEntry_has_value(const envoy_config_route_v3_Route_TypedPerFilterConfigEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
805
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_Route_TypedPerFilterConfigEntry_value(const envoy_config_route_v3_Route_TypedPerFilterConfigEntry *msg) {
806
+ struct google_protobuf_Any* ret;
807
+ _upb_msg_map_value(msg, &ret, sizeof(ret));
808
+ return ret;
809
+ }
810
+
811
+ UPB_INLINE void envoy_config_route_v3_Route_TypedPerFilterConfigEntry_set_value(envoy_config_route_v3_Route_TypedPerFilterConfigEntry *msg, struct google_protobuf_Any* value) {
812
+ _upb_msg_map_set_value(msg, &value, sizeof(struct google_protobuf_Any*));
813
+ }
814
+
815
+ /* envoy.config.route.v3.WeightedCluster */
816
+
817
+ UPB_INLINE envoy_config_route_v3_WeightedCluster *envoy_config_route_v3_WeightedCluster_new(upb_arena *arena) {
818
+ return (envoy_config_route_v3_WeightedCluster *)_upb_msg_new(&envoy_config_route_v3_WeightedCluster_msginit, arena);
819
+ }
820
+ UPB_INLINE envoy_config_route_v3_WeightedCluster *envoy_config_route_v3_WeightedCluster_parse(const char *buf, size_t size,
821
+ upb_arena *arena) {
822
+ envoy_config_route_v3_WeightedCluster *ret = envoy_config_route_v3_WeightedCluster_new(arena);
823
+ if (!ret) return NULL;
824
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_WeightedCluster_msginit, arena)) return NULL;
825
+ return ret;
826
+ }
827
+ UPB_INLINE envoy_config_route_v3_WeightedCluster *envoy_config_route_v3_WeightedCluster_parse_ex(const char *buf, size_t size,
828
+ const upb_extreg *extreg, int options,
829
+ upb_arena *arena) {
830
+ envoy_config_route_v3_WeightedCluster *ret = envoy_config_route_v3_WeightedCluster_new(arena);
831
+ if (!ret) return NULL;
832
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_WeightedCluster_msginit, extreg, options, arena)) {
833
+ return NULL;
834
+ }
835
+ return ret;
836
+ }
837
+ UPB_INLINE char *envoy_config_route_v3_WeightedCluster_serialize(const envoy_config_route_v3_WeightedCluster *msg, upb_arena *arena, size_t *len) {
838
+ return upb_encode(msg, &envoy_config_route_v3_WeightedCluster_msginit, arena, len);
839
+ }
840
+
841
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_has_clusters(const envoy_config_route_v3_WeightedCluster *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
842
+ UPB_INLINE const envoy_config_route_v3_WeightedCluster_ClusterWeight* const* envoy_config_route_v3_WeightedCluster_clusters(const envoy_config_route_v3_WeightedCluster *msg, size_t *len) { return (const envoy_config_route_v3_WeightedCluster_ClusterWeight* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
843
+ UPB_INLINE upb_strview envoy_config_route_v3_WeightedCluster_runtime_key_prefix(const envoy_config_route_v3_WeightedCluster *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
844
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_has_total_weight(const envoy_config_route_v3_WeightedCluster *msg) { return _upb_hasbit(msg, 1); }
845
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_WeightedCluster_total_weight(const envoy_config_route_v3_WeightedCluster *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_UInt32Value*); }
846
+
847
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight** envoy_config_route_v3_WeightedCluster_mutable_clusters(envoy_config_route_v3_WeightedCluster *msg, size_t *len) {
848
+ return (envoy_config_route_v3_WeightedCluster_ClusterWeight**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
849
+ }
850
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight** envoy_config_route_v3_WeightedCluster_resize_clusters(envoy_config_route_v3_WeightedCluster *msg, size_t len, upb_arena *arena) {
851
+ return (envoy_config_route_v3_WeightedCluster_ClusterWeight**)_upb_array_resize_accessor2(msg, UPB_SIZE(16, 32), len, UPB_SIZE(2, 3), arena);
852
+ }
853
+ UPB_INLINE struct envoy_config_route_v3_WeightedCluster_ClusterWeight* envoy_config_route_v3_WeightedCluster_add_clusters(envoy_config_route_v3_WeightedCluster *msg, upb_arena *arena) {
854
+ struct envoy_config_route_v3_WeightedCluster_ClusterWeight* sub = (struct envoy_config_route_v3_WeightedCluster_ClusterWeight*)_upb_msg_new(&envoy_config_route_v3_WeightedCluster_ClusterWeight_msginit, arena);
855
+ bool ok = _upb_array_append_accessor2(
856
+ msg, UPB_SIZE(16, 32), UPB_SIZE(2, 3), &sub, arena);
857
+ if (!ok) return NULL;
858
+ return sub;
859
+ }
860
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_set_runtime_key_prefix(envoy_config_route_v3_WeightedCluster *msg, upb_strview value) {
861
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
862
+ }
863
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_set_total_weight(envoy_config_route_v3_WeightedCluster *msg, struct google_protobuf_UInt32Value* value) {
864
+ _upb_sethas(msg, 1);
865
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_UInt32Value*) = value;
866
+ }
867
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_WeightedCluster_mutable_total_weight(envoy_config_route_v3_WeightedCluster *msg, upb_arena *arena) {
868
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_WeightedCluster_total_weight(msg);
869
+ if (sub == NULL) {
870
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
871
+ if (!sub) return NULL;
872
+ envoy_config_route_v3_WeightedCluster_set_total_weight(msg, sub);
873
+ }
874
+ return sub;
875
+ }
876
+
877
+ /* envoy.config.route.v3.WeightedCluster.ClusterWeight */
878
+
879
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight *envoy_config_route_v3_WeightedCluster_ClusterWeight_new(upb_arena *arena) {
880
+ return (envoy_config_route_v3_WeightedCluster_ClusterWeight *)_upb_msg_new(&envoy_config_route_v3_WeightedCluster_ClusterWeight_msginit, arena);
881
+ }
882
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight *envoy_config_route_v3_WeightedCluster_ClusterWeight_parse(const char *buf, size_t size,
883
+ upb_arena *arena) {
884
+ envoy_config_route_v3_WeightedCluster_ClusterWeight *ret = envoy_config_route_v3_WeightedCluster_ClusterWeight_new(arena);
885
+ if (!ret) return NULL;
886
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_WeightedCluster_ClusterWeight_msginit, arena)) return NULL;
887
+ return ret;
888
+ }
889
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight *envoy_config_route_v3_WeightedCluster_ClusterWeight_parse_ex(const char *buf, size_t size,
890
+ const upb_extreg *extreg, int options,
891
+ upb_arena *arena) {
892
+ envoy_config_route_v3_WeightedCluster_ClusterWeight *ret = envoy_config_route_v3_WeightedCluster_ClusterWeight_new(arena);
893
+ if (!ret) return NULL;
894
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_WeightedCluster_ClusterWeight_msginit, extreg, options, arena)) {
895
+ return NULL;
896
+ }
897
+ return ret;
898
+ }
899
+ UPB_INLINE char *envoy_config_route_v3_WeightedCluster_ClusterWeight_serialize(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_arena *arena, size_t *len) {
900
+ return upb_encode(msg, &envoy_config_route_v3_WeightedCluster_ClusterWeight_msginit, arena, len);
901
+ }
902
+
903
+ typedef enum {
904
+ envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_specifier_host_rewrite_literal = 11,
905
+ envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_specifier_NOT_SET = 0
906
+ } envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_specifier_oneofcases;
907
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_specifier_oneofcases envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_specifier_case(const envoy_config_route_v3_WeightedCluster_ClusterWeight* msg) { return (envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(56, 112), int32_t); }
908
+
909
+ UPB_INLINE upb_strview envoy_config_route_v3_WeightedCluster_ClusterWeight_name(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
910
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_has_weight(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return _upb_hasbit(msg, 1); }
911
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_WeightedCluster_ClusterWeight_weight(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), const struct google_protobuf_UInt32Value*); }
912
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_has_metadata_match(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return _upb_hasbit(msg, 2); }
913
+ UPB_INLINE const struct envoy_config_core_v3_Metadata* envoy_config_route_v3_WeightedCluster_ClusterWeight_metadata_match(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(24, 48), const struct envoy_config_core_v3_Metadata*); }
914
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_has_request_headers_to_add(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(28, 56)); }
915
+ UPB_INLINE const struct envoy_config_core_v3_HeaderValueOption* const* envoy_config_route_v3_WeightedCluster_ClusterWeight_request_headers_to_add(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) { return (const struct envoy_config_core_v3_HeaderValueOption* const*)_upb_array_accessor(msg, UPB_SIZE(28, 56), len); }
916
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_has_response_headers_to_add(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(32, 64)); }
917
+ UPB_INLINE const struct envoy_config_core_v3_HeaderValueOption* const* envoy_config_route_v3_WeightedCluster_ClusterWeight_response_headers_to_add(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) { return (const struct envoy_config_core_v3_HeaderValueOption* const*)_upb_array_accessor(msg, UPB_SIZE(32, 64), len); }
918
+ UPB_INLINE upb_strview const* envoy_config_route_v3_WeightedCluster_ClusterWeight_response_headers_to_remove(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(36, 72), len); }
919
+ UPB_INLINE upb_strview const* envoy_config_route_v3_WeightedCluster_ClusterWeight_request_headers_to_remove(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(40, 80), len); }
920
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_has_typed_per_filter_config(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(44, 88)); }
921
+ UPB_INLINE size_t envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_size(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) {return _upb_msg_map_size(msg, UPB_SIZE(44, 88)); }
922
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_get(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview key, struct google_protobuf_Any* *val) { return _upb_msg_map_get(msg, UPB_SIZE(44, 88), &key, 0, val, sizeof(*val)); }
923
+ UPB_INLINE const envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry* envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_next(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t* iter) { return (const envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry*)_upb_msg_map_next(msg, UPB_SIZE(44, 88), iter); }
924
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_has_host_rewrite_literal(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return _upb_getoneofcase(msg, UPB_SIZE(56, 112)) == 11; }
925
+ UPB_INLINE upb_strview envoy_config_route_v3_WeightedCluster_ClusterWeight_host_rewrite_literal(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(48, 96), UPB_SIZE(56, 112), 11, upb_strview_make("", strlen(""))); }
926
+ UPB_INLINE upb_strview envoy_config_route_v3_WeightedCluster_ClusterWeight_cluster_header(const envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
927
+
928
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_set_name(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview value) {
929
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
930
+ }
931
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_set_weight(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, struct google_protobuf_UInt32Value* value) {
932
+ _upb_sethas(msg, 1);
933
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), struct google_protobuf_UInt32Value*) = value;
934
+ }
935
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_WeightedCluster_ClusterWeight_mutable_weight(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_arena *arena) {
936
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_WeightedCluster_ClusterWeight_weight(msg);
937
+ if (sub == NULL) {
938
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
939
+ if (!sub) return NULL;
940
+ envoy_config_route_v3_WeightedCluster_ClusterWeight_set_weight(msg, sub);
941
+ }
942
+ return sub;
943
+ }
944
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_set_metadata_match(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, struct envoy_config_core_v3_Metadata* value) {
945
+ _upb_sethas(msg, 2);
946
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 48), struct envoy_config_core_v3_Metadata*) = value;
947
+ }
948
+ UPB_INLINE struct envoy_config_core_v3_Metadata* envoy_config_route_v3_WeightedCluster_ClusterWeight_mutable_metadata_match(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_arena *arena) {
949
+ struct envoy_config_core_v3_Metadata* sub = (struct envoy_config_core_v3_Metadata*)envoy_config_route_v3_WeightedCluster_ClusterWeight_metadata_match(msg);
950
+ if (sub == NULL) {
951
+ sub = (struct envoy_config_core_v3_Metadata*)_upb_msg_new(&envoy_config_core_v3_Metadata_msginit, arena);
952
+ if (!sub) return NULL;
953
+ envoy_config_route_v3_WeightedCluster_ClusterWeight_set_metadata_match(msg, sub);
954
+ }
955
+ return sub;
956
+ }
957
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_WeightedCluster_ClusterWeight_mutable_request_headers_to_add(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) {
958
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 56), len);
959
+ }
960
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_WeightedCluster_ClusterWeight_resize_request_headers_to_add(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t len, upb_arena *arena) {
961
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_resize_accessor2(msg, UPB_SIZE(28, 56), len, UPB_SIZE(2, 3), arena);
962
+ }
963
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption* envoy_config_route_v3_WeightedCluster_ClusterWeight_add_request_headers_to_add(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_arena *arena) {
964
+ struct envoy_config_core_v3_HeaderValueOption* sub = (struct envoy_config_core_v3_HeaderValueOption*)_upb_msg_new(&envoy_config_core_v3_HeaderValueOption_msginit, arena);
965
+ bool ok = _upb_array_append_accessor2(
966
+ msg, UPB_SIZE(28, 56), UPB_SIZE(2, 3), &sub, arena);
967
+ if (!ok) return NULL;
968
+ return sub;
969
+ }
970
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_WeightedCluster_ClusterWeight_mutable_response_headers_to_add(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) {
971
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(32, 64), len);
972
+ }
973
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption** envoy_config_route_v3_WeightedCluster_ClusterWeight_resize_response_headers_to_add(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t len, upb_arena *arena) {
974
+ return (struct envoy_config_core_v3_HeaderValueOption**)_upb_array_resize_accessor2(msg, UPB_SIZE(32, 64), len, UPB_SIZE(2, 3), arena);
975
+ }
976
+ UPB_INLINE struct envoy_config_core_v3_HeaderValueOption* envoy_config_route_v3_WeightedCluster_ClusterWeight_add_response_headers_to_add(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_arena *arena) {
977
+ struct envoy_config_core_v3_HeaderValueOption* sub = (struct envoy_config_core_v3_HeaderValueOption*)_upb_msg_new(&envoy_config_core_v3_HeaderValueOption_msginit, arena);
978
+ bool ok = _upb_array_append_accessor2(
979
+ msg, UPB_SIZE(32, 64), UPB_SIZE(2, 3), &sub, arena);
980
+ if (!ok) return NULL;
981
+ return sub;
982
+ }
983
+ UPB_INLINE upb_strview* envoy_config_route_v3_WeightedCluster_ClusterWeight_mutable_response_headers_to_remove(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) {
984
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(36, 72), len);
985
+ }
986
+ UPB_INLINE upb_strview* envoy_config_route_v3_WeightedCluster_ClusterWeight_resize_response_headers_to_remove(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t len, upb_arena *arena) {
987
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(36, 72), len, UPB_SIZE(3, 4), arena);
988
+ }
989
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_add_response_headers_to_remove(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview val, upb_arena *arena) {
990
+ return _upb_array_append_accessor2(msg, UPB_SIZE(36, 72), UPB_SIZE(3, 4), &val,
991
+ arena);
992
+ }
993
+ UPB_INLINE upb_strview* envoy_config_route_v3_WeightedCluster_ClusterWeight_mutable_request_headers_to_remove(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t *len) {
994
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(40, 80), len);
995
+ }
996
+ UPB_INLINE upb_strview* envoy_config_route_v3_WeightedCluster_ClusterWeight_resize_request_headers_to_remove(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t len, upb_arena *arena) {
997
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(40, 80), len, UPB_SIZE(3, 4), arena);
998
+ }
999
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_add_request_headers_to_remove(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview val, upb_arena *arena) {
1000
+ return _upb_array_append_accessor2(msg, UPB_SIZE(40, 80), UPB_SIZE(3, 4), &val,
1001
+ arena);
1002
+ }
1003
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_clear(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg) { _upb_msg_map_clear(msg, UPB_SIZE(44, 88)); }
1004
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_set(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview key, struct google_protobuf_Any* val, upb_arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(44, 88), &key, 0, &val, sizeof(val), a); }
1005
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_delete(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview key) { return _upb_msg_map_delete(msg, UPB_SIZE(44, 88), &key, 0); }
1006
+ UPB_INLINE envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry* envoy_config_route_v3_WeightedCluster_ClusterWeight_typed_per_filter_config_nextmutable(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, size_t* iter) { return (envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry*)_upb_msg_map_next(msg, UPB_SIZE(44, 88), iter); }
1007
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_set_host_rewrite_literal(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview value) {
1008
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(48, 96), value, UPB_SIZE(56, 112), 11);
1009
+ }
1010
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_set_cluster_header(envoy_config_route_v3_WeightedCluster_ClusterWeight *msg, upb_strview value) {
1011
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
1012
+ }
1013
+
1014
+ /* envoy.config.route.v3.WeightedCluster.ClusterWeight.TypedPerFilterConfigEntry */
1015
+
1016
+ UPB_INLINE upb_strview envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry_key(const envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry *msg) {
1017
+ upb_strview ret;
1018
+ _upb_msg_map_key(msg, &ret, 0);
1019
+ return ret;
1020
+ }
1021
+ UPB_INLINE bool envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry_has_value(const envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
1022
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry_value(const envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry *msg) {
1023
+ struct google_protobuf_Any* ret;
1024
+ _upb_msg_map_value(msg, &ret, sizeof(ret));
1025
+ return ret;
1026
+ }
1027
+
1028
+ UPB_INLINE void envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry_set_value(envoy_config_route_v3_WeightedCluster_ClusterWeight_TypedPerFilterConfigEntry *msg, struct google_protobuf_Any* value) {
1029
+ _upb_msg_map_set_value(msg, &value, sizeof(struct google_protobuf_Any*));
1030
+ }
1031
+
1032
+ /* envoy.config.route.v3.RouteMatch */
1033
+
1034
+ UPB_INLINE envoy_config_route_v3_RouteMatch *envoy_config_route_v3_RouteMatch_new(upb_arena *arena) {
1035
+ return (envoy_config_route_v3_RouteMatch *)_upb_msg_new(&envoy_config_route_v3_RouteMatch_msginit, arena);
1036
+ }
1037
+ UPB_INLINE envoy_config_route_v3_RouteMatch *envoy_config_route_v3_RouteMatch_parse(const char *buf, size_t size,
1038
+ upb_arena *arena) {
1039
+ envoy_config_route_v3_RouteMatch *ret = envoy_config_route_v3_RouteMatch_new(arena);
1040
+ if (!ret) return NULL;
1041
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_msginit, arena)) return NULL;
1042
+ return ret;
1043
+ }
1044
+ UPB_INLINE envoy_config_route_v3_RouteMatch *envoy_config_route_v3_RouteMatch_parse_ex(const char *buf, size_t size,
1045
+ const upb_extreg *extreg, int options,
1046
+ upb_arena *arena) {
1047
+ envoy_config_route_v3_RouteMatch *ret = envoy_config_route_v3_RouteMatch_new(arena);
1048
+ if (!ret) return NULL;
1049
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_msginit, extreg, options, arena)) {
1050
+ return NULL;
1051
+ }
1052
+ return ret;
1053
+ }
1054
+ UPB_INLINE char *envoy_config_route_v3_RouteMatch_serialize(const envoy_config_route_v3_RouteMatch *msg, upb_arena *arena, size_t *len) {
1055
+ return upb_encode(msg, &envoy_config_route_v3_RouteMatch_msginit, arena, len);
1056
+ }
1057
+
1058
+ typedef enum {
1059
+ envoy_config_route_v3_RouteMatch_path_specifier_prefix = 1,
1060
+ envoy_config_route_v3_RouteMatch_path_specifier_path = 2,
1061
+ envoy_config_route_v3_RouteMatch_path_specifier_safe_regex = 10,
1062
+ envoy_config_route_v3_RouteMatch_path_specifier_connect_matcher = 12,
1063
+ envoy_config_route_v3_RouteMatch_path_specifier_NOT_SET = 0
1064
+ } envoy_config_route_v3_RouteMatch_path_specifier_oneofcases;
1065
+ UPB_INLINE envoy_config_route_v3_RouteMatch_path_specifier_oneofcases envoy_config_route_v3_RouteMatch_path_specifier_case(const envoy_config_route_v3_RouteMatch* msg) { return (envoy_config_route_v3_RouteMatch_path_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(40, 80), int32_t); }
1066
+
1067
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_prefix(const envoy_config_route_v3_RouteMatch *msg) { return _upb_getoneofcase(msg, UPB_SIZE(40, 80)) == 1; }
1068
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteMatch_prefix(const envoy_config_route_v3_RouteMatch *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(32, 64), UPB_SIZE(40, 80), 1, upb_strview_make("", strlen(""))); }
1069
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_path(const envoy_config_route_v3_RouteMatch *msg) { return _upb_getoneofcase(msg, UPB_SIZE(40, 80)) == 2; }
1070
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteMatch_path(const envoy_config_route_v3_RouteMatch *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(32, 64), UPB_SIZE(40, 80), 2, upb_strview_make("", strlen(""))); }
1071
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_case_sensitive(const envoy_config_route_v3_RouteMatch *msg) { return _upb_hasbit(msg, 1); }
1072
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteMatch_case_sensitive(const envoy_config_route_v3_RouteMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_BoolValue*); }
1073
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_headers(const envoy_config_route_v3_RouteMatch *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(20, 40)); }
1074
+ UPB_INLINE const envoy_config_route_v3_HeaderMatcher* const* envoy_config_route_v3_RouteMatch_headers(const envoy_config_route_v3_RouteMatch *msg, size_t *len) { return (const envoy_config_route_v3_HeaderMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
1075
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_query_parameters(const envoy_config_route_v3_RouteMatch *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(24, 48)); }
1076
+ UPB_INLINE const envoy_config_route_v3_QueryParameterMatcher* const* envoy_config_route_v3_RouteMatch_query_parameters(const envoy_config_route_v3_RouteMatch *msg, size_t *len) { return (const envoy_config_route_v3_QueryParameterMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
1077
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_grpc(const envoy_config_route_v3_RouteMatch *msg) { return _upb_hasbit(msg, 2); }
1078
+ UPB_INLINE const envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions* envoy_config_route_v3_RouteMatch_grpc(const envoy_config_route_v3_RouteMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions*); }
1079
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_runtime_fraction(const envoy_config_route_v3_RouteMatch *msg) { return _upb_hasbit(msg, 3); }
1080
+ UPB_INLINE const struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_RouteMatch_runtime_fraction(const envoy_config_route_v3_RouteMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_config_core_v3_RuntimeFractionalPercent*); }
1081
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_safe_regex(const envoy_config_route_v3_RouteMatch *msg) { return _upb_getoneofcase(msg, UPB_SIZE(40, 80)) == 10; }
1082
+ UPB_INLINE const struct envoy_type_matcher_v3_RegexMatcher* envoy_config_route_v3_RouteMatch_safe_regex(const envoy_config_route_v3_RouteMatch *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_RegexMatcher*, UPB_SIZE(32, 64), UPB_SIZE(40, 80), 10, NULL); }
1083
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_tls_context(const envoy_config_route_v3_RouteMatch *msg) { return _upb_hasbit(msg, 4); }
1084
+ UPB_INLINE const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions* envoy_config_route_v3_RouteMatch_tls_context(const envoy_config_route_v3_RouteMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions*); }
1085
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_connect_matcher(const envoy_config_route_v3_RouteMatch *msg) { return _upb_getoneofcase(msg, UPB_SIZE(40, 80)) == 12; }
1086
+ UPB_INLINE const envoy_config_route_v3_RouteMatch_ConnectMatcher* envoy_config_route_v3_RouteMatch_connect_matcher(const envoy_config_route_v3_RouteMatch *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteMatch_ConnectMatcher*, UPB_SIZE(32, 64), UPB_SIZE(40, 80), 12, NULL); }
1087
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_has_dynamic_metadata(const envoy_config_route_v3_RouteMatch *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(28, 56)); }
1088
+ UPB_INLINE const struct envoy_type_matcher_v3_MetadataMatcher* const* envoy_config_route_v3_RouteMatch_dynamic_metadata(const envoy_config_route_v3_RouteMatch *msg, size_t *len) { return (const struct envoy_type_matcher_v3_MetadataMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(28, 56), len); }
1089
+
1090
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_prefix(envoy_config_route_v3_RouteMatch *msg, upb_strview value) {
1091
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(32, 64), value, UPB_SIZE(40, 80), 1);
1092
+ }
1093
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_path(envoy_config_route_v3_RouteMatch *msg, upb_strview value) {
1094
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(32, 64), value, UPB_SIZE(40, 80), 2);
1095
+ }
1096
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_case_sensitive(envoy_config_route_v3_RouteMatch *msg, struct google_protobuf_BoolValue* value) {
1097
+ _upb_sethas(msg, 1);
1098
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_BoolValue*) = value;
1099
+ }
1100
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteMatch_mutable_case_sensitive(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1101
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteMatch_case_sensitive(msg);
1102
+ if (sub == NULL) {
1103
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1104
+ if (!sub) return NULL;
1105
+ envoy_config_route_v3_RouteMatch_set_case_sensitive(msg, sub);
1106
+ }
1107
+ return sub;
1108
+ }
1109
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RouteMatch_mutable_headers(envoy_config_route_v3_RouteMatch *msg, size_t *len) {
1110
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
1111
+ }
1112
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RouteMatch_resize_headers(envoy_config_route_v3_RouteMatch *msg, size_t len, upb_arena *arena) {
1113
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(20, 40), len, UPB_SIZE(2, 3), arena);
1114
+ }
1115
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_route_v3_RouteMatch_add_headers(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1116
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
1117
+ bool ok = _upb_array_append_accessor2(
1118
+ msg, UPB_SIZE(20, 40), UPB_SIZE(2, 3), &sub, arena);
1119
+ if (!ok) return NULL;
1120
+ return sub;
1121
+ }
1122
+ UPB_INLINE envoy_config_route_v3_QueryParameterMatcher** envoy_config_route_v3_RouteMatch_mutable_query_parameters(envoy_config_route_v3_RouteMatch *msg, size_t *len) {
1123
+ return (envoy_config_route_v3_QueryParameterMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
1124
+ }
1125
+ UPB_INLINE envoy_config_route_v3_QueryParameterMatcher** envoy_config_route_v3_RouteMatch_resize_query_parameters(envoy_config_route_v3_RouteMatch *msg, size_t len, upb_arena *arena) {
1126
+ return (envoy_config_route_v3_QueryParameterMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(24, 48), len, UPB_SIZE(2, 3), arena);
1127
+ }
1128
+ UPB_INLINE struct envoy_config_route_v3_QueryParameterMatcher* envoy_config_route_v3_RouteMatch_add_query_parameters(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1129
+ struct envoy_config_route_v3_QueryParameterMatcher* sub = (struct envoy_config_route_v3_QueryParameterMatcher*)_upb_msg_new(&envoy_config_route_v3_QueryParameterMatcher_msginit, arena);
1130
+ bool ok = _upb_array_append_accessor2(
1131
+ msg, UPB_SIZE(24, 48), UPB_SIZE(2, 3), &sub, arena);
1132
+ if (!ok) return NULL;
1133
+ return sub;
1134
+ }
1135
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_grpc(envoy_config_route_v3_RouteMatch *msg, envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions* value) {
1136
+ _upb_sethas(msg, 2);
1137
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions*) = value;
1138
+ }
1139
+ UPB_INLINE struct envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions* envoy_config_route_v3_RouteMatch_mutable_grpc(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1140
+ struct envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions* sub = (struct envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions*)envoy_config_route_v3_RouteMatch_grpc(msg);
1141
+ if (sub == NULL) {
1142
+ sub = (struct envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions*)_upb_msg_new(&envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_msginit, arena);
1143
+ if (!sub) return NULL;
1144
+ envoy_config_route_v3_RouteMatch_set_grpc(msg, sub);
1145
+ }
1146
+ return sub;
1147
+ }
1148
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_runtime_fraction(envoy_config_route_v3_RouteMatch *msg, struct envoy_config_core_v3_RuntimeFractionalPercent* value) {
1149
+ _upb_sethas(msg, 3);
1150
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct envoy_config_core_v3_RuntimeFractionalPercent*) = value;
1151
+ }
1152
+ UPB_INLINE struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_RouteMatch_mutable_runtime_fraction(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1153
+ struct envoy_config_core_v3_RuntimeFractionalPercent* sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)envoy_config_route_v3_RouteMatch_runtime_fraction(msg);
1154
+ if (sub == NULL) {
1155
+ sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)_upb_msg_new(&envoy_config_core_v3_RuntimeFractionalPercent_msginit, arena);
1156
+ if (!sub) return NULL;
1157
+ envoy_config_route_v3_RouteMatch_set_runtime_fraction(msg, sub);
1158
+ }
1159
+ return sub;
1160
+ }
1161
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_safe_regex(envoy_config_route_v3_RouteMatch *msg, struct envoy_type_matcher_v3_RegexMatcher* value) {
1162
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_RegexMatcher*, UPB_SIZE(32, 64), value, UPB_SIZE(40, 80), 10);
1163
+ }
1164
+ UPB_INLINE struct envoy_type_matcher_v3_RegexMatcher* envoy_config_route_v3_RouteMatch_mutable_safe_regex(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1165
+ struct envoy_type_matcher_v3_RegexMatcher* sub = (struct envoy_type_matcher_v3_RegexMatcher*)envoy_config_route_v3_RouteMatch_safe_regex(msg);
1166
+ if (sub == NULL) {
1167
+ sub = (struct envoy_type_matcher_v3_RegexMatcher*)_upb_msg_new(&envoy_type_matcher_v3_RegexMatcher_msginit, arena);
1168
+ if (!sub) return NULL;
1169
+ envoy_config_route_v3_RouteMatch_set_safe_regex(msg, sub);
1170
+ }
1171
+ return sub;
1172
+ }
1173
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_tls_context(envoy_config_route_v3_RouteMatch *msg, envoy_config_route_v3_RouteMatch_TlsContextMatchOptions* value) {
1174
+ _upb_sethas(msg, 4);
1175
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 32), envoy_config_route_v3_RouteMatch_TlsContextMatchOptions*) = value;
1176
+ }
1177
+ UPB_INLINE struct envoy_config_route_v3_RouteMatch_TlsContextMatchOptions* envoy_config_route_v3_RouteMatch_mutable_tls_context(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1178
+ struct envoy_config_route_v3_RouteMatch_TlsContextMatchOptions* sub = (struct envoy_config_route_v3_RouteMatch_TlsContextMatchOptions*)envoy_config_route_v3_RouteMatch_tls_context(msg);
1179
+ if (sub == NULL) {
1180
+ sub = (struct envoy_config_route_v3_RouteMatch_TlsContextMatchOptions*)_upb_msg_new(&envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_msginit, arena);
1181
+ if (!sub) return NULL;
1182
+ envoy_config_route_v3_RouteMatch_set_tls_context(msg, sub);
1183
+ }
1184
+ return sub;
1185
+ }
1186
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_set_connect_matcher(envoy_config_route_v3_RouteMatch *msg, envoy_config_route_v3_RouteMatch_ConnectMatcher* value) {
1187
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteMatch_ConnectMatcher*, UPB_SIZE(32, 64), value, UPB_SIZE(40, 80), 12);
1188
+ }
1189
+ UPB_INLINE struct envoy_config_route_v3_RouteMatch_ConnectMatcher* envoy_config_route_v3_RouteMatch_mutable_connect_matcher(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1190
+ struct envoy_config_route_v3_RouteMatch_ConnectMatcher* sub = (struct envoy_config_route_v3_RouteMatch_ConnectMatcher*)envoy_config_route_v3_RouteMatch_connect_matcher(msg);
1191
+ if (sub == NULL) {
1192
+ sub = (struct envoy_config_route_v3_RouteMatch_ConnectMatcher*)_upb_msg_new(&envoy_config_route_v3_RouteMatch_ConnectMatcher_msginit, arena);
1193
+ if (!sub) return NULL;
1194
+ envoy_config_route_v3_RouteMatch_set_connect_matcher(msg, sub);
1195
+ }
1196
+ return sub;
1197
+ }
1198
+ UPB_INLINE struct envoy_type_matcher_v3_MetadataMatcher** envoy_config_route_v3_RouteMatch_mutable_dynamic_metadata(envoy_config_route_v3_RouteMatch *msg, size_t *len) {
1199
+ return (struct envoy_type_matcher_v3_MetadataMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 56), len);
1200
+ }
1201
+ UPB_INLINE struct envoy_type_matcher_v3_MetadataMatcher** envoy_config_route_v3_RouteMatch_resize_dynamic_metadata(envoy_config_route_v3_RouteMatch *msg, size_t len, upb_arena *arena) {
1202
+ return (struct envoy_type_matcher_v3_MetadataMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(28, 56), len, UPB_SIZE(2, 3), arena);
1203
+ }
1204
+ UPB_INLINE struct envoy_type_matcher_v3_MetadataMatcher* envoy_config_route_v3_RouteMatch_add_dynamic_metadata(envoy_config_route_v3_RouteMatch *msg, upb_arena *arena) {
1205
+ struct envoy_type_matcher_v3_MetadataMatcher* sub = (struct envoy_type_matcher_v3_MetadataMatcher*)_upb_msg_new(&envoy_type_matcher_v3_MetadataMatcher_msginit, arena);
1206
+ bool ok = _upb_array_append_accessor2(
1207
+ msg, UPB_SIZE(28, 56), UPB_SIZE(2, 3), &sub, arena);
1208
+ if (!ok) return NULL;
1209
+ return sub;
1210
+ }
1211
+
1212
+ /* envoy.config.route.v3.RouteMatch.GrpcRouteMatchOptions */
1213
+
1214
+ UPB_INLINE envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_new(upb_arena *arena) {
1215
+ return (envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *)_upb_msg_new(&envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_msginit, arena);
1216
+ }
1217
+ UPB_INLINE envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_parse(const char *buf, size_t size,
1218
+ upb_arena *arena) {
1219
+ envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *ret = envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_new(arena);
1220
+ if (!ret) return NULL;
1221
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_msginit, arena)) return NULL;
1222
+ return ret;
1223
+ }
1224
+ UPB_INLINE envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_parse_ex(const char *buf, size_t size,
1225
+ const upb_extreg *extreg, int options,
1226
+ upb_arena *arena) {
1227
+ envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *ret = envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_new(arena);
1228
+ if (!ret) return NULL;
1229
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_msginit, extreg, options, arena)) {
1230
+ return NULL;
1231
+ }
1232
+ return ret;
1233
+ }
1234
+ UPB_INLINE char *envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_serialize(const envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions *msg, upb_arena *arena, size_t *len) {
1235
+ return upb_encode(msg, &envoy_config_route_v3_RouteMatch_GrpcRouteMatchOptions_msginit, arena, len);
1236
+ }
1237
+
1238
+
1239
+
1240
+ /* envoy.config.route.v3.RouteMatch.TlsContextMatchOptions */
1241
+
1242
+ UPB_INLINE envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_new(upb_arena *arena) {
1243
+ return (envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *)_upb_msg_new(&envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_msginit, arena);
1244
+ }
1245
+ UPB_INLINE envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_parse(const char *buf, size_t size,
1246
+ upb_arena *arena) {
1247
+ envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *ret = envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_new(arena);
1248
+ if (!ret) return NULL;
1249
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_msginit, arena)) return NULL;
1250
+ return ret;
1251
+ }
1252
+ UPB_INLINE envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_parse_ex(const char *buf, size_t size,
1253
+ const upb_extreg *extreg, int options,
1254
+ upb_arena *arena) {
1255
+ envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *ret = envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_new(arena);
1256
+ if (!ret) return NULL;
1257
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_msginit, extreg, options, arena)) {
1258
+ return NULL;
1259
+ }
1260
+ return ret;
1261
+ }
1262
+ UPB_INLINE char *envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_serialize(const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg, upb_arena *arena, size_t *len) {
1263
+ return upb_encode(msg, &envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_msginit, arena, len);
1264
+ }
1265
+
1266
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_has_presented(const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg) { return _upb_hasbit(msg, 1); }
1267
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_presented(const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_BoolValue*); }
1268
+ UPB_INLINE bool envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_has_validated(const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg) { return _upb_hasbit(msg, 2); }
1269
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_validated(const envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_BoolValue*); }
1270
+
1271
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_set_presented(envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg, struct google_protobuf_BoolValue* value) {
1272
+ _upb_sethas(msg, 1);
1273
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_BoolValue*) = value;
1274
+ }
1275
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_mutable_presented(envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg, upb_arena *arena) {
1276
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_presented(msg);
1277
+ if (sub == NULL) {
1278
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1279
+ if (!sub) return NULL;
1280
+ envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_set_presented(msg, sub);
1281
+ }
1282
+ return sub;
1283
+ }
1284
+ UPB_INLINE void envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_set_validated(envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg, struct google_protobuf_BoolValue* value) {
1285
+ _upb_sethas(msg, 2);
1286
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_BoolValue*) = value;
1287
+ }
1288
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_mutable_validated(envoy_config_route_v3_RouteMatch_TlsContextMatchOptions *msg, upb_arena *arena) {
1289
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_validated(msg);
1290
+ if (sub == NULL) {
1291
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1292
+ if (!sub) return NULL;
1293
+ envoy_config_route_v3_RouteMatch_TlsContextMatchOptions_set_validated(msg, sub);
1294
+ }
1295
+ return sub;
1296
+ }
1297
+
1298
+ /* envoy.config.route.v3.RouteMatch.ConnectMatcher */
1299
+
1300
+ UPB_INLINE envoy_config_route_v3_RouteMatch_ConnectMatcher *envoy_config_route_v3_RouteMatch_ConnectMatcher_new(upb_arena *arena) {
1301
+ return (envoy_config_route_v3_RouteMatch_ConnectMatcher *)_upb_msg_new(&envoy_config_route_v3_RouteMatch_ConnectMatcher_msginit, arena);
1302
+ }
1303
+ UPB_INLINE envoy_config_route_v3_RouteMatch_ConnectMatcher *envoy_config_route_v3_RouteMatch_ConnectMatcher_parse(const char *buf, size_t size,
1304
+ upb_arena *arena) {
1305
+ envoy_config_route_v3_RouteMatch_ConnectMatcher *ret = envoy_config_route_v3_RouteMatch_ConnectMatcher_new(arena);
1306
+ if (!ret) return NULL;
1307
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_ConnectMatcher_msginit, arena)) return NULL;
1308
+ return ret;
1309
+ }
1310
+ UPB_INLINE envoy_config_route_v3_RouteMatch_ConnectMatcher *envoy_config_route_v3_RouteMatch_ConnectMatcher_parse_ex(const char *buf, size_t size,
1311
+ const upb_extreg *extreg, int options,
1312
+ upb_arena *arena) {
1313
+ envoy_config_route_v3_RouteMatch_ConnectMatcher *ret = envoy_config_route_v3_RouteMatch_ConnectMatcher_new(arena);
1314
+ if (!ret) return NULL;
1315
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteMatch_ConnectMatcher_msginit, extreg, options, arena)) {
1316
+ return NULL;
1317
+ }
1318
+ return ret;
1319
+ }
1320
+ UPB_INLINE char *envoy_config_route_v3_RouteMatch_ConnectMatcher_serialize(const envoy_config_route_v3_RouteMatch_ConnectMatcher *msg, upb_arena *arena, size_t *len) {
1321
+ return upb_encode(msg, &envoy_config_route_v3_RouteMatch_ConnectMatcher_msginit, arena, len);
1322
+ }
1323
+
1324
+
1325
+
1326
+ /* envoy.config.route.v3.CorsPolicy */
1327
+
1328
+ UPB_INLINE envoy_config_route_v3_CorsPolicy *envoy_config_route_v3_CorsPolicy_new(upb_arena *arena) {
1329
+ return (envoy_config_route_v3_CorsPolicy *)_upb_msg_new(&envoy_config_route_v3_CorsPolicy_msginit, arena);
1330
+ }
1331
+ UPB_INLINE envoy_config_route_v3_CorsPolicy *envoy_config_route_v3_CorsPolicy_parse(const char *buf, size_t size,
1332
+ upb_arena *arena) {
1333
+ envoy_config_route_v3_CorsPolicy *ret = envoy_config_route_v3_CorsPolicy_new(arena);
1334
+ if (!ret) return NULL;
1335
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_CorsPolicy_msginit, arena)) return NULL;
1336
+ return ret;
1337
+ }
1338
+ UPB_INLINE envoy_config_route_v3_CorsPolicy *envoy_config_route_v3_CorsPolicy_parse_ex(const char *buf, size_t size,
1339
+ const upb_extreg *extreg, int options,
1340
+ upb_arena *arena) {
1341
+ envoy_config_route_v3_CorsPolicy *ret = envoy_config_route_v3_CorsPolicy_new(arena);
1342
+ if (!ret) return NULL;
1343
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_CorsPolicy_msginit, extreg, options, arena)) {
1344
+ return NULL;
1345
+ }
1346
+ return ret;
1347
+ }
1348
+ UPB_INLINE char *envoy_config_route_v3_CorsPolicy_serialize(const envoy_config_route_v3_CorsPolicy *msg, upb_arena *arena, size_t *len) {
1349
+ return upb_encode(msg, &envoy_config_route_v3_CorsPolicy_msginit, arena, len);
1350
+ }
1351
+
1352
+ typedef enum {
1353
+ envoy_config_route_v3_CorsPolicy_enabled_specifier_filter_enabled = 9,
1354
+ envoy_config_route_v3_CorsPolicy_enabled_specifier_NOT_SET = 0
1355
+ } envoy_config_route_v3_CorsPolicy_enabled_specifier_oneofcases;
1356
+ UPB_INLINE envoy_config_route_v3_CorsPolicy_enabled_specifier_oneofcases envoy_config_route_v3_CorsPolicy_enabled_specifier_case(const envoy_config_route_v3_CorsPolicy* msg) { return (envoy_config_route_v3_CorsPolicy_enabled_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(52, 104), int32_t); }
1357
+
1358
+ UPB_INLINE upb_strview envoy_config_route_v3_CorsPolicy_allow_methods(const envoy_config_route_v3_CorsPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
1359
+ UPB_INLINE upb_strview envoy_config_route_v3_CorsPolicy_allow_headers(const envoy_config_route_v3_CorsPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
1360
+ UPB_INLINE upb_strview envoy_config_route_v3_CorsPolicy_expose_headers(const envoy_config_route_v3_CorsPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), upb_strview); }
1361
+ UPB_INLINE upb_strview envoy_config_route_v3_CorsPolicy_max_age(const envoy_config_route_v3_CorsPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(28, 56), upb_strview); }
1362
+ UPB_INLINE bool envoy_config_route_v3_CorsPolicy_has_allow_credentials(const envoy_config_route_v3_CorsPolicy *msg) { return _upb_hasbit(msg, 1); }
1363
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_CorsPolicy_allow_credentials(const envoy_config_route_v3_CorsPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(36, 72), const struct google_protobuf_BoolValue*); }
1364
+ UPB_INLINE bool envoy_config_route_v3_CorsPolicy_has_filter_enabled(const envoy_config_route_v3_CorsPolicy *msg) { return _upb_getoneofcase(msg, UPB_SIZE(52, 104)) == 9; }
1365
+ UPB_INLINE const struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_CorsPolicy_filter_enabled(const envoy_config_route_v3_CorsPolicy *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_RuntimeFractionalPercent*, UPB_SIZE(48, 96), UPB_SIZE(52, 104), 9, NULL); }
1366
+ UPB_INLINE bool envoy_config_route_v3_CorsPolicy_has_shadow_enabled(const envoy_config_route_v3_CorsPolicy *msg) { return _upb_hasbit(msg, 2); }
1367
+ UPB_INLINE const struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_CorsPolicy_shadow_enabled(const envoy_config_route_v3_CorsPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(40, 80), const struct envoy_config_core_v3_RuntimeFractionalPercent*); }
1368
+ UPB_INLINE bool envoy_config_route_v3_CorsPolicy_has_allow_origin_string_match(const envoy_config_route_v3_CorsPolicy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(44, 88)); }
1369
+ UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* const* envoy_config_route_v3_CorsPolicy_allow_origin_string_match(const envoy_config_route_v3_CorsPolicy *msg, size_t *len) { return (const struct envoy_type_matcher_v3_StringMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(44, 88), len); }
1370
+
1371
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_allow_methods(envoy_config_route_v3_CorsPolicy *msg, upb_strview value) {
1372
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
1373
+ }
1374
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_allow_headers(envoy_config_route_v3_CorsPolicy *msg, upb_strview value) {
1375
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
1376
+ }
1377
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_expose_headers(envoy_config_route_v3_CorsPolicy *msg, upb_strview value) {
1378
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), upb_strview) = value;
1379
+ }
1380
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_max_age(envoy_config_route_v3_CorsPolicy *msg, upb_strview value) {
1381
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 56), upb_strview) = value;
1382
+ }
1383
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_allow_credentials(envoy_config_route_v3_CorsPolicy *msg, struct google_protobuf_BoolValue* value) {
1384
+ _upb_sethas(msg, 1);
1385
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 72), struct google_protobuf_BoolValue*) = value;
1386
+ }
1387
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_CorsPolicy_mutable_allow_credentials(envoy_config_route_v3_CorsPolicy *msg, upb_arena *arena) {
1388
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_CorsPolicy_allow_credentials(msg);
1389
+ if (sub == NULL) {
1390
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1391
+ if (!sub) return NULL;
1392
+ envoy_config_route_v3_CorsPolicy_set_allow_credentials(msg, sub);
1393
+ }
1394
+ return sub;
1395
+ }
1396
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_filter_enabled(envoy_config_route_v3_CorsPolicy *msg, struct envoy_config_core_v3_RuntimeFractionalPercent* value) {
1397
+ UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_RuntimeFractionalPercent*, UPB_SIZE(48, 96), value, UPB_SIZE(52, 104), 9);
1398
+ }
1399
+ UPB_INLINE struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_CorsPolicy_mutable_filter_enabled(envoy_config_route_v3_CorsPolicy *msg, upb_arena *arena) {
1400
+ struct envoy_config_core_v3_RuntimeFractionalPercent* sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)envoy_config_route_v3_CorsPolicy_filter_enabled(msg);
1401
+ if (sub == NULL) {
1402
+ sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)_upb_msg_new(&envoy_config_core_v3_RuntimeFractionalPercent_msginit, arena);
1403
+ if (!sub) return NULL;
1404
+ envoy_config_route_v3_CorsPolicy_set_filter_enabled(msg, sub);
1405
+ }
1406
+ return sub;
1407
+ }
1408
+ UPB_INLINE void envoy_config_route_v3_CorsPolicy_set_shadow_enabled(envoy_config_route_v3_CorsPolicy *msg, struct envoy_config_core_v3_RuntimeFractionalPercent* value) {
1409
+ _upb_sethas(msg, 2);
1410
+ *UPB_PTR_AT(msg, UPB_SIZE(40, 80), struct envoy_config_core_v3_RuntimeFractionalPercent*) = value;
1411
+ }
1412
+ UPB_INLINE struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_CorsPolicy_mutable_shadow_enabled(envoy_config_route_v3_CorsPolicy *msg, upb_arena *arena) {
1413
+ struct envoy_config_core_v3_RuntimeFractionalPercent* sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)envoy_config_route_v3_CorsPolicy_shadow_enabled(msg);
1414
+ if (sub == NULL) {
1415
+ sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)_upb_msg_new(&envoy_config_core_v3_RuntimeFractionalPercent_msginit, arena);
1416
+ if (!sub) return NULL;
1417
+ envoy_config_route_v3_CorsPolicy_set_shadow_enabled(msg, sub);
1418
+ }
1419
+ return sub;
1420
+ }
1421
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher** envoy_config_route_v3_CorsPolicy_mutable_allow_origin_string_match(envoy_config_route_v3_CorsPolicy *msg, size_t *len) {
1422
+ return (struct envoy_type_matcher_v3_StringMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(44, 88), len);
1423
+ }
1424
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher** envoy_config_route_v3_CorsPolicy_resize_allow_origin_string_match(envoy_config_route_v3_CorsPolicy *msg, size_t len, upb_arena *arena) {
1425
+ return (struct envoy_type_matcher_v3_StringMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(44, 88), len, UPB_SIZE(2, 3), arena);
1426
+ }
1427
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_config_route_v3_CorsPolicy_add_allow_origin_string_match(envoy_config_route_v3_CorsPolicy *msg, upb_arena *arena) {
1428
+ struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
1429
+ bool ok = _upb_array_append_accessor2(
1430
+ msg, UPB_SIZE(44, 88), UPB_SIZE(2, 3), &sub, arena);
1431
+ if (!ok) return NULL;
1432
+ return sub;
1433
+ }
1434
+
1435
+ /* envoy.config.route.v3.RouteAction */
1436
+
1437
+ UPB_INLINE envoy_config_route_v3_RouteAction *envoy_config_route_v3_RouteAction_new(upb_arena *arena) {
1438
+ return (envoy_config_route_v3_RouteAction *)_upb_msg_new(&envoy_config_route_v3_RouteAction_msginit, arena);
1439
+ }
1440
+ UPB_INLINE envoy_config_route_v3_RouteAction *envoy_config_route_v3_RouteAction_parse(const char *buf, size_t size,
1441
+ upb_arena *arena) {
1442
+ envoy_config_route_v3_RouteAction *ret = envoy_config_route_v3_RouteAction_new(arena);
1443
+ if (!ret) return NULL;
1444
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_msginit, arena)) return NULL;
1445
+ return ret;
1446
+ }
1447
+ UPB_INLINE envoy_config_route_v3_RouteAction *envoy_config_route_v3_RouteAction_parse_ex(const char *buf, size_t size,
1448
+ const upb_extreg *extreg, int options,
1449
+ upb_arena *arena) {
1450
+ envoy_config_route_v3_RouteAction *ret = envoy_config_route_v3_RouteAction_new(arena);
1451
+ if (!ret) return NULL;
1452
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_msginit, extreg, options, arena)) {
1453
+ return NULL;
1454
+ }
1455
+ return ret;
1456
+ }
1457
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_serialize(const envoy_config_route_v3_RouteAction *msg, upb_arena *arena, size_t *len) {
1458
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_msginit, arena, len);
1459
+ }
1460
+
1461
+ typedef enum {
1462
+ envoy_config_route_v3_RouteAction_cluster_specifier_cluster = 1,
1463
+ envoy_config_route_v3_RouteAction_cluster_specifier_cluster_header = 2,
1464
+ envoy_config_route_v3_RouteAction_cluster_specifier_weighted_clusters = 3,
1465
+ envoy_config_route_v3_RouteAction_cluster_specifier_cluster_specifier_plugin = 37,
1466
+ envoy_config_route_v3_RouteAction_cluster_specifier_NOT_SET = 0
1467
+ } envoy_config_route_v3_RouteAction_cluster_specifier_oneofcases;
1468
+ UPB_INLINE envoy_config_route_v3_RouteAction_cluster_specifier_oneofcases envoy_config_route_v3_RouteAction_cluster_specifier_case(const envoy_config_route_v3_RouteAction* msg) { return (envoy_config_route_v3_RouteAction_cluster_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(104, 192), int32_t); }
1469
+
1470
+ typedef enum {
1471
+ envoy_config_route_v3_RouteAction_host_rewrite_specifier_host_rewrite_literal = 6,
1472
+ envoy_config_route_v3_RouteAction_host_rewrite_specifier_auto_host_rewrite = 7,
1473
+ envoy_config_route_v3_RouteAction_host_rewrite_specifier_host_rewrite_header = 29,
1474
+ envoy_config_route_v3_RouteAction_host_rewrite_specifier_host_rewrite_path_regex = 35,
1475
+ envoy_config_route_v3_RouteAction_host_rewrite_specifier_NOT_SET = 0
1476
+ } envoy_config_route_v3_RouteAction_host_rewrite_specifier_oneofcases;
1477
+ UPB_INLINE envoy_config_route_v3_RouteAction_host_rewrite_specifier_oneofcases envoy_config_route_v3_RouteAction_host_rewrite_specifier_case(const envoy_config_route_v3_RouteAction* msg) { return (envoy_config_route_v3_RouteAction_host_rewrite_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(116, 216), int32_t); }
1478
+
1479
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_cluster(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(104, 192)) == 1; }
1480
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_cluster(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(96, 176), UPB_SIZE(104, 192), 1, upb_strview_make("", strlen(""))); }
1481
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_cluster_header(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(104, 192)) == 2; }
1482
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_cluster_header(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(96, 176), UPB_SIZE(104, 192), 2, upb_strview_make("", strlen(""))); }
1483
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_weighted_clusters(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(104, 192)) == 3; }
1484
+ UPB_INLINE const envoy_config_route_v3_WeightedCluster* envoy_config_route_v3_RouteAction_weighted_clusters(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_WeightedCluster*, UPB_SIZE(96, 176), UPB_SIZE(104, 192), 3, NULL); }
1485
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_metadata_match(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 1); }
1486
+ UPB_INLINE const struct envoy_config_core_v3_Metadata* envoy_config_route_v3_RouteAction_metadata_match(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(24, 32), const struct envoy_config_core_v3_Metadata*); }
1487
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_prefix_rewrite(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 16), upb_strview); }
1488
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_host_rewrite_literal(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(116, 216)) == 6; }
1489
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_host_rewrite_literal(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(108, 200), UPB_SIZE(116, 216), 6, upb_strview_make("", strlen(""))); }
1490
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_auto_host_rewrite(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(116, 216)) == 7; }
1491
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_auto_host_rewrite(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_BoolValue*, UPB_SIZE(108, 200), UPB_SIZE(116, 216), 7, NULL); }
1492
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_timeout(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 2); }
1493
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_timeout(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(28, 40), const struct google_protobuf_Duration*); }
1494
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_retry_policy(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 3); }
1495
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy* envoy_config_route_v3_RouteAction_retry_policy(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(32, 48), const envoy_config_route_v3_RetryPolicy*); }
1496
+ UPB_INLINE int32_t envoy_config_route_v3_RouteAction_priority(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t); }
1497
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_rate_limits(const envoy_config_route_v3_RouteAction *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(80, 144)); }
1498
+ UPB_INLINE const envoy_config_route_v3_RateLimit* const* envoy_config_route_v3_RouteAction_rate_limits(const envoy_config_route_v3_RouteAction *msg, size_t *len) { return (const envoy_config_route_v3_RateLimit* const*)_upb_array_accessor(msg, UPB_SIZE(80, 144), len); }
1499
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_include_vh_rate_limits(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 4); }
1500
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_include_vh_rate_limits(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(36, 56), const struct google_protobuf_BoolValue*); }
1501
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_hash_policy(const envoy_config_route_v3_RouteAction *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(84, 152)); }
1502
+ UPB_INLINE const envoy_config_route_v3_RouteAction_HashPolicy* const* envoy_config_route_v3_RouteAction_hash_policy(const envoy_config_route_v3_RouteAction *msg, size_t *len) { return (const envoy_config_route_v3_RouteAction_HashPolicy* const*)_upb_array_accessor(msg, UPB_SIZE(84, 152), len); }
1503
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_cors(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 5); }
1504
+ UPB_INLINE const envoy_config_route_v3_CorsPolicy* envoy_config_route_v3_RouteAction_cors(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(40, 64), const envoy_config_route_v3_CorsPolicy*); }
1505
+ UPB_INLINE int32_t envoy_config_route_v3_RouteAction_cluster_not_found_response_code(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t); }
1506
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_max_grpc_timeout(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 6); }
1507
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_max_grpc_timeout(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(44, 72), const struct google_protobuf_Duration*); }
1508
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_idle_timeout(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 7); }
1509
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_idle_timeout(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(48, 80), const struct google_protobuf_Duration*); }
1510
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_upgrade_configs(const envoy_config_route_v3_RouteAction *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(88, 160)); }
1511
+ UPB_INLINE const envoy_config_route_v3_RouteAction_UpgradeConfig* const* envoy_config_route_v3_RouteAction_upgrade_configs(const envoy_config_route_v3_RouteAction *msg, size_t *len) { return (const envoy_config_route_v3_RouteAction_UpgradeConfig* const*)_upb_array_accessor(msg, UPB_SIZE(88, 160), len); }
1512
+ UPB_INLINE int32_t envoy_config_route_v3_RouteAction_internal_redirect_action(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 12), int32_t); }
1513
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_hedge_policy(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 8); }
1514
+ UPB_INLINE const envoy_config_route_v3_HedgePolicy* envoy_config_route_v3_RouteAction_hedge_policy(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(52, 88), const envoy_config_route_v3_HedgePolicy*); }
1515
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_grpc_timeout_offset(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 9); }
1516
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_grpc_timeout_offset(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(56, 96), const struct google_protobuf_Duration*); }
1517
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_host_rewrite_header(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(116, 216)) == 29; }
1518
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_host_rewrite_header(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(108, 200), UPB_SIZE(116, 216), 29, upb_strview_make("", strlen(""))); }
1519
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_request_mirror_policies(const envoy_config_route_v3_RouteAction *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(92, 168)); }
1520
+ UPB_INLINE const envoy_config_route_v3_RouteAction_RequestMirrorPolicy* const* envoy_config_route_v3_RouteAction_request_mirror_policies(const envoy_config_route_v3_RouteAction *msg, size_t *len) { return (const envoy_config_route_v3_RouteAction_RequestMirrorPolicy* const*)_upb_array_accessor(msg, UPB_SIZE(92, 168), len); }
1521
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_max_internal_redirects(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 10); }
1522
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_RouteAction_max_internal_redirects(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(60, 104), const struct google_protobuf_UInt32Value*); }
1523
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_regex_rewrite(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 11); }
1524
+ UPB_INLINE const struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RouteAction_regex_rewrite(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(64, 112), const struct envoy_type_matcher_v3_RegexMatchAndSubstitute*); }
1525
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_retry_policy_typed_config(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 12); }
1526
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_RouteAction_retry_policy_typed_config(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(68, 120), const struct google_protobuf_Any*); }
1527
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_internal_redirect_policy(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 13); }
1528
+ UPB_INLINE const envoy_config_route_v3_InternalRedirectPolicy* envoy_config_route_v3_RouteAction_internal_redirect_policy(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(72, 128), const envoy_config_route_v3_InternalRedirectPolicy*); }
1529
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_host_rewrite_path_regex(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(116, 216)) == 35; }
1530
+ UPB_INLINE const struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RouteAction_host_rewrite_path_regex(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_RegexMatchAndSubstitute*, UPB_SIZE(108, 200), UPB_SIZE(116, 216), 35, NULL); }
1531
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_max_stream_duration(const envoy_config_route_v3_RouteAction *msg) { return _upb_hasbit(msg, 14); }
1532
+ UPB_INLINE const envoy_config_route_v3_RouteAction_MaxStreamDuration* envoy_config_route_v3_RouteAction_max_stream_duration(const envoy_config_route_v3_RouteAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(76, 136), const envoy_config_route_v3_RouteAction_MaxStreamDuration*); }
1533
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_has_cluster_specifier_plugin(const envoy_config_route_v3_RouteAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(104, 192)) == 37; }
1534
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_cluster_specifier_plugin(const envoy_config_route_v3_RouteAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(96, 176), UPB_SIZE(104, 192), 37, upb_strview_make("", strlen(""))); }
1535
+
1536
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_cluster(envoy_config_route_v3_RouteAction *msg, upb_strview value) {
1537
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(96, 176), value, UPB_SIZE(104, 192), 1);
1538
+ }
1539
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_cluster_header(envoy_config_route_v3_RouteAction *msg, upb_strview value) {
1540
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(96, 176), value, UPB_SIZE(104, 192), 2);
1541
+ }
1542
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_weighted_clusters(envoy_config_route_v3_RouteAction *msg, envoy_config_route_v3_WeightedCluster* value) {
1543
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_WeightedCluster*, UPB_SIZE(96, 176), value, UPB_SIZE(104, 192), 3);
1544
+ }
1545
+ UPB_INLINE struct envoy_config_route_v3_WeightedCluster* envoy_config_route_v3_RouteAction_mutable_weighted_clusters(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1546
+ struct envoy_config_route_v3_WeightedCluster* sub = (struct envoy_config_route_v3_WeightedCluster*)envoy_config_route_v3_RouteAction_weighted_clusters(msg);
1547
+ if (sub == NULL) {
1548
+ sub = (struct envoy_config_route_v3_WeightedCluster*)_upb_msg_new(&envoy_config_route_v3_WeightedCluster_msginit, arena);
1549
+ if (!sub) return NULL;
1550
+ envoy_config_route_v3_RouteAction_set_weighted_clusters(msg, sub);
1551
+ }
1552
+ return sub;
1553
+ }
1554
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_metadata_match(envoy_config_route_v3_RouteAction *msg, struct envoy_config_core_v3_Metadata* value) {
1555
+ _upb_sethas(msg, 1);
1556
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 32), struct envoy_config_core_v3_Metadata*) = value;
1557
+ }
1558
+ UPB_INLINE struct envoy_config_core_v3_Metadata* envoy_config_route_v3_RouteAction_mutable_metadata_match(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1559
+ struct envoy_config_core_v3_Metadata* sub = (struct envoy_config_core_v3_Metadata*)envoy_config_route_v3_RouteAction_metadata_match(msg);
1560
+ if (sub == NULL) {
1561
+ sub = (struct envoy_config_core_v3_Metadata*)_upb_msg_new(&envoy_config_core_v3_Metadata_msginit, arena);
1562
+ if (!sub) return NULL;
1563
+ envoy_config_route_v3_RouteAction_set_metadata_match(msg, sub);
1564
+ }
1565
+ return sub;
1566
+ }
1567
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_prefix_rewrite(envoy_config_route_v3_RouteAction *msg, upb_strview value) {
1568
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 16), upb_strview) = value;
1569
+ }
1570
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_host_rewrite_literal(envoy_config_route_v3_RouteAction *msg, upb_strview value) {
1571
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(108, 200), value, UPB_SIZE(116, 216), 6);
1572
+ }
1573
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_auto_host_rewrite(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_BoolValue* value) {
1574
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_BoolValue*, UPB_SIZE(108, 200), value, UPB_SIZE(116, 216), 7);
1575
+ }
1576
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_mutable_auto_host_rewrite(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1577
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteAction_auto_host_rewrite(msg);
1578
+ if (sub == NULL) {
1579
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1580
+ if (!sub) return NULL;
1581
+ envoy_config_route_v3_RouteAction_set_auto_host_rewrite(msg, sub);
1582
+ }
1583
+ return sub;
1584
+ }
1585
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_timeout(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_Duration* value) {
1586
+ _upb_sethas(msg, 2);
1587
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 40), struct google_protobuf_Duration*) = value;
1588
+ }
1589
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_mutable_timeout(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1590
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_timeout(msg);
1591
+ if (sub == NULL) {
1592
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
1593
+ if (!sub) return NULL;
1594
+ envoy_config_route_v3_RouteAction_set_timeout(msg, sub);
1595
+ }
1596
+ return sub;
1597
+ }
1598
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_retry_policy(envoy_config_route_v3_RouteAction *msg, envoy_config_route_v3_RetryPolicy* value) {
1599
+ _upb_sethas(msg, 3);
1600
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 48), envoy_config_route_v3_RetryPolicy*) = value;
1601
+ }
1602
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy* envoy_config_route_v3_RouteAction_mutable_retry_policy(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1603
+ struct envoy_config_route_v3_RetryPolicy* sub = (struct envoy_config_route_v3_RetryPolicy*)envoy_config_route_v3_RouteAction_retry_policy(msg);
1604
+ if (sub == NULL) {
1605
+ sub = (struct envoy_config_route_v3_RetryPolicy*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_msginit, arena);
1606
+ if (!sub) return NULL;
1607
+ envoy_config_route_v3_RouteAction_set_retry_policy(msg, sub);
1608
+ }
1609
+ return sub;
1610
+ }
1611
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_priority(envoy_config_route_v3_RouteAction *msg, int32_t value) {
1612
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
1613
+ }
1614
+ UPB_INLINE envoy_config_route_v3_RateLimit** envoy_config_route_v3_RouteAction_mutable_rate_limits(envoy_config_route_v3_RouteAction *msg, size_t *len) {
1615
+ return (envoy_config_route_v3_RateLimit**)_upb_array_mutable_accessor(msg, UPB_SIZE(80, 144), len);
1616
+ }
1617
+ UPB_INLINE envoy_config_route_v3_RateLimit** envoy_config_route_v3_RouteAction_resize_rate_limits(envoy_config_route_v3_RouteAction *msg, size_t len, upb_arena *arena) {
1618
+ return (envoy_config_route_v3_RateLimit**)_upb_array_resize_accessor2(msg, UPB_SIZE(80, 144), len, UPB_SIZE(2, 3), arena);
1619
+ }
1620
+ UPB_INLINE struct envoy_config_route_v3_RateLimit* envoy_config_route_v3_RouteAction_add_rate_limits(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1621
+ struct envoy_config_route_v3_RateLimit* sub = (struct envoy_config_route_v3_RateLimit*)_upb_msg_new(&envoy_config_route_v3_RateLimit_msginit, arena);
1622
+ bool ok = _upb_array_append_accessor2(
1623
+ msg, UPB_SIZE(80, 144), UPB_SIZE(2, 3), &sub, arena);
1624
+ if (!ok) return NULL;
1625
+ return sub;
1626
+ }
1627
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_include_vh_rate_limits(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_BoolValue* value) {
1628
+ _upb_sethas(msg, 4);
1629
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 56), struct google_protobuf_BoolValue*) = value;
1630
+ }
1631
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_mutable_include_vh_rate_limits(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1632
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteAction_include_vh_rate_limits(msg);
1633
+ if (sub == NULL) {
1634
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1635
+ if (!sub) return NULL;
1636
+ envoy_config_route_v3_RouteAction_set_include_vh_rate_limits(msg, sub);
1637
+ }
1638
+ return sub;
1639
+ }
1640
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy** envoy_config_route_v3_RouteAction_mutable_hash_policy(envoy_config_route_v3_RouteAction *msg, size_t *len) {
1641
+ return (envoy_config_route_v3_RouteAction_HashPolicy**)_upb_array_mutable_accessor(msg, UPB_SIZE(84, 152), len);
1642
+ }
1643
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy** envoy_config_route_v3_RouteAction_resize_hash_policy(envoy_config_route_v3_RouteAction *msg, size_t len, upb_arena *arena) {
1644
+ return (envoy_config_route_v3_RouteAction_HashPolicy**)_upb_array_resize_accessor2(msg, UPB_SIZE(84, 152), len, UPB_SIZE(2, 3), arena);
1645
+ }
1646
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy* envoy_config_route_v3_RouteAction_add_hash_policy(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1647
+ struct envoy_config_route_v3_RouteAction_HashPolicy* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy*)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_msginit, arena);
1648
+ bool ok = _upb_array_append_accessor2(
1649
+ msg, UPB_SIZE(84, 152), UPB_SIZE(2, 3), &sub, arena);
1650
+ if (!ok) return NULL;
1651
+ return sub;
1652
+ }
1653
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_cors(envoy_config_route_v3_RouteAction *msg, envoy_config_route_v3_CorsPolicy* value) {
1654
+ _upb_sethas(msg, 5);
1655
+ *UPB_PTR_AT(msg, UPB_SIZE(40, 64), envoy_config_route_v3_CorsPolicy*) = value;
1656
+ }
1657
+ UPB_INLINE struct envoy_config_route_v3_CorsPolicy* envoy_config_route_v3_RouteAction_mutable_cors(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1658
+ struct envoy_config_route_v3_CorsPolicy* sub = (struct envoy_config_route_v3_CorsPolicy*)envoy_config_route_v3_RouteAction_cors(msg);
1659
+ if (sub == NULL) {
1660
+ sub = (struct envoy_config_route_v3_CorsPolicy*)_upb_msg_new(&envoy_config_route_v3_CorsPolicy_msginit, arena);
1661
+ if (!sub) return NULL;
1662
+ envoy_config_route_v3_RouteAction_set_cors(msg, sub);
1663
+ }
1664
+ return sub;
1665
+ }
1666
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_cluster_not_found_response_code(envoy_config_route_v3_RouteAction *msg, int32_t value) {
1667
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t) = value;
1668
+ }
1669
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_max_grpc_timeout(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_Duration* value) {
1670
+ _upb_sethas(msg, 6);
1671
+ *UPB_PTR_AT(msg, UPB_SIZE(44, 72), struct google_protobuf_Duration*) = value;
1672
+ }
1673
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_mutable_max_grpc_timeout(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1674
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_max_grpc_timeout(msg);
1675
+ if (sub == NULL) {
1676
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
1677
+ if (!sub) return NULL;
1678
+ envoy_config_route_v3_RouteAction_set_max_grpc_timeout(msg, sub);
1679
+ }
1680
+ return sub;
1681
+ }
1682
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_idle_timeout(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_Duration* value) {
1683
+ _upb_sethas(msg, 7);
1684
+ *UPB_PTR_AT(msg, UPB_SIZE(48, 80), struct google_protobuf_Duration*) = value;
1685
+ }
1686
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_mutable_idle_timeout(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1687
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_idle_timeout(msg);
1688
+ if (sub == NULL) {
1689
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
1690
+ if (!sub) return NULL;
1691
+ envoy_config_route_v3_RouteAction_set_idle_timeout(msg, sub);
1692
+ }
1693
+ return sub;
1694
+ }
1695
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig** envoy_config_route_v3_RouteAction_mutable_upgrade_configs(envoy_config_route_v3_RouteAction *msg, size_t *len) {
1696
+ return (envoy_config_route_v3_RouteAction_UpgradeConfig**)_upb_array_mutable_accessor(msg, UPB_SIZE(88, 160), len);
1697
+ }
1698
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig** envoy_config_route_v3_RouteAction_resize_upgrade_configs(envoy_config_route_v3_RouteAction *msg, size_t len, upb_arena *arena) {
1699
+ return (envoy_config_route_v3_RouteAction_UpgradeConfig**)_upb_array_resize_accessor2(msg, UPB_SIZE(88, 160), len, UPB_SIZE(2, 3), arena);
1700
+ }
1701
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_UpgradeConfig* envoy_config_route_v3_RouteAction_add_upgrade_configs(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1702
+ struct envoy_config_route_v3_RouteAction_UpgradeConfig* sub = (struct envoy_config_route_v3_RouteAction_UpgradeConfig*)_upb_msg_new(&envoy_config_route_v3_RouteAction_UpgradeConfig_msginit, arena);
1703
+ bool ok = _upb_array_append_accessor2(
1704
+ msg, UPB_SIZE(88, 160), UPB_SIZE(2, 3), &sub, arena);
1705
+ if (!ok) return NULL;
1706
+ return sub;
1707
+ }
1708
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_internal_redirect_action(envoy_config_route_v3_RouteAction *msg, int32_t value) {
1709
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 12), int32_t) = value;
1710
+ }
1711
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_hedge_policy(envoy_config_route_v3_RouteAction *msg, envoy_config_route_v3_HedgePolicy* value) {
1712
+ _upb_sethas(msg, 8);
1713
+ *UPB_PTR_AT(msg, UPB_SIZE(52, 88), envoy_config_route_v3_HedgePolicy*) = value;
1714
+ }
1715
+ UPB_INLINE struct envoy_config_route_v3_HedgePolicy* envoy_config_route_v3_RouteAction_mutable_hedge_policy(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1716
+ struct envoy_config_route_v3_HedgePolicy* sub = (struct envoy_config_route_v3_HedgePolicy*)envoy_config_route_v3_RouteAction_hedge_policy(msg);
1717
+ if (sub == NULL) {
1718
+ sub = (struct envoy_config_route_v3_HedgePolicy*)_upb_msg_new(&envoy_config_route_v3_HedgePolicy_msginit, arena);
1719
+ if (!sub) return NULL;
1720
+ envoy_config_route_v3_RouteAction_set_hedge_policy(msg, sub);
1721
+ }
1722
+ return sub;
1723
+ }
1724
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_grpc_timeout_offset(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_Duration* value) {
1725
+ _upb_sethas(msg, 9);
1726
+ *UPB_PTR_AT(msg, UPB_SIZE(56, 96), struct google_protobuf_Duration*) = value;
1727
+ }
1728
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_mutable_grpc_timeout_offset(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1729
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_grpc_timeout_offset(msg);
1730
+ if (sub == NULL) {
1731
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
1732
+ if (!sub) return NULL;
1733
+ envoy_config_route_v3_RouteAction_set_grpc_timeout_offset(msg, sub);
1734
+ }
1735
+ return sub;
1736
+ }
1737
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_host_rewrite_header(envoy_config_route_v3_RouteAction *msg, upb_strview value) {
1738
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(108, 200), value, UPB_SIZE(116, 216), 29);
1739
+ }
1740
+ UPB_INLINE envoy_config_route_v3_RouteAction_RequestMirrorPolicy** envoy_config_route_v3_RouteAction_mutable_request_mirror_policies(envoy_config_route_v3_RouteAction *msg, size_t *len) {
1741
+ return (envoy_config_route_v3_RouteAction_RequestMirrorPolicy**)_upb_array_mutable_accessor(msg, UPB_SIZE(92, 168), len);
1742
+ }
1743
+ UPB_INLINE envoy_config_route_v3_RouteAction_RequestMirrorPolicy** envoy_config_route_v3_RouteAction_resize_request_mirror_policies(envoy_config_route_v3_RouteAction *msg, size_t len, upb_arena *arena) {
1744
+ return (envoy_config_route_v3_RouteAction_RequestMirrorPolicy**)_upb_array_resize_accessor2(msg, UPB_SIZE(92, 168), len, UPB_SIZE(2, 3), arena);
1745
+ }
1746
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy* envoy_config_route_v3_RouteAction_add_request_mirror_policies(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1747
+ struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy* sub = (struct envoy_config_route_v3_RouteAction_RequestMirrorPolicy*)_upb_msg_new(&envoy_config_route_v3_RouteAction_RequestMirrorPolicy_msginit, arena);
1748
+ bool ok = _upb_array_append_accessor2(
1749
+ msg, UPB_SIZE(92, 168), UPB_SIZE(2, 3), &sub, arena);
1750
+ if (!ok) return NULL;
1751
+ return sub;
1752
+ }
1753
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_max_internal_redirects(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_UInt32Value* value) {
1754
+ _upb_sethas(msg, 10);
1755
+ *UPB_PTR_AT(msg, UPB_SIZE(60, 104), struct google_protobuf_UInt32Value*) = value;
1756
+ }
1757
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_RouteAction_mutable_max_internal_redirects(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1758
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_RouteAction_max_internal_redirects(msg);
1759
+ if (sub == NULL) {
1760
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
1761
+ if (!sub) return NULL;
1762
+ envoy_config_route_v3_RouteAction_set_max_internal_redirects(msg, sub);
1763
+ }
1764
+ return sub;
1765
+ }
1766
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_regex_rewrite(envoy_config_route_v3_RouteAction *msg, struct envoy_type_matcher_v3_RegexMatchAndSubstitute* value) {
1767
+ _upb_sethas(msg, 11);
1768
+ *UPB_PTR_AT(msg, UPB_SIZE(64, 112), struct envoy_type_matcher_v3_RegexMatchAndSubstitute*) = value;
1769
+ }
1770
+ UPB_INLINE struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RouteAction_mutable_regex_rewrite(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1771
+ struct envoy_type_matcher_v3_RegexMatchAndSubstitute* sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)envoy_config_route_v3_RouteAction_regex_rewrite(msg);
1772
+ if (sub == NULL) {
1773
+ sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)_upb_msg_new(&envoy_type_matcher_v3_RegexMatchAndSubstitute_msginit, arena);
1774
+ if (!sub) return NULL;
1775
+ envoy_config_route_v3_RouteAction_set_regex_rewrite(msg, sub);
1776
+ }
1777
+ return sub;
1778
+ }
1779
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_retry_policy_typed_config(envoy_config_route_v3_RouteAction *msg, struct google_protobuf_Any* value) {
1780
+ _upb_sethas(msg, 12);
1781
+ *UPB_PTR_AT(msg, UPB_SIZE(68, 120), struct google_protobuf_Any*) = value;
1782
+ }
1783
+ UPB_INLINE struct google_protobuf_Any* envoy_config_route_v3_RouteAction_mutable_retry_policy_typed_config(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1784
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_route_v3_RouteAction_retry_policy_typed_config(msg);
1785
+ if (sub == NULL) {
1786
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
1787
+ if (!sub) return NULL;
1788
+ envoy_config_route_v3_RouteAction_set_retry_policy_typed_config(msg, sub);
1789
+ }
1790
+ return sub;
1791
+ }
1792
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_internal_redirect_policy(envoy_config_route_v3_RouteAction *msg, envoy_config_route_v3_InternalRedirectPolicy* value) {
1793
+ _upb_sethas(msg, 13);
1794
+ *UPB_PTR_AT(msg, UPB_SIZE(72, 128), envoy_config_route_v3_InternalRedirectPolicy*) = value;
1795
+ }
1796
+ UPB_INLINE struct envoy_config_route_v3_InternalRedirectPolicy* envoy_config_route_v3_RouteAction_mutable_internal_redirect_policy(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1797
+ struct envoy_config_route_v3_InternalRedirectPolicy* sub = (struct envoy_config_route_v3_InternalRedirectPolicy*)envoy_config_route_v3_RouteAction_internal_redirect_policy(msg);
1798
+ if (sub == NULL) {
1799
+ sub = (struct envoy_config_route_v3_InternalRedirectPolicy*)_upb_msg_new(&envoy_config_route_v3_InternalRedirectPolicy_msginit, arena);
1800
+ if (!sub) return NULL;
1801
+ envoy_config_route_v3_RouteAction_set_internal_redirect_policy(msg, sub);
1802
+ }
1803
+ return sub;
1804
+ }
1805
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_host_rewrite_path_regex(envoy_config_route_v3_RouteAction *msg, struct envoy_type_matcher_v3_RegexMatchAndSubstitute* value) {
1806
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_RegexMatchAndSubstitute*, UPB_SIZE(108, 200), value, UPB_SIZE(116, 216), 35);
1807
+ }
1808
+ UPB_INLINE struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RouteAction_mutable_host_rewrite_path_regex(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1809
+ struct envoy_type_matcher_v3_RegexMatchAndSubstitute* sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)envoy_config_route_v3_RouteAction_host_rewrite_path_regex(msg);
1810
+ if (sub == NULL) {
1811
+ sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)_upb_msg_new(&envoy_type_matcher_v3_RegexMatchAndSubstitute_msginit, arena);
1812
+ if (!sub) return NULL;
1813
+ envoy_config_route_v3_RouteAction_set_host_rewrite_path_regex(msg, sub);
1814
+ }
1815
+ return sub;
1816
+ }
1817
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_max_stream_duration(envoy_config_route_v3_RouteAction *msg, envoy_config_route_v3_RouteAction_MaxStreamDuration* value) {
1818
+ _upb_sethas(msg, 14);
1819
+ *UPB_PTR_AT(msg, UPB_SIZE(76, 136), envoy_config_route_v3_RouteAction_MaxStreamDuration*) = value;
1820
+ }
1821
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_MaxStreamDuration* envoy_config_route_v3_RouteAction_mutable_max_stream_duration(envoy_config_route_v3_RouteAction *msg, upb_arena *arena) {
1822
+ struct envoy_config_route_v3_RouteAction_MaxStreamDuration* sub = (struct envoy_config_route_v3_RouteAction_MaxStreamDuration*)envoy_config_route_v3_RouteAction_max_stream_duration(msg);
1823
+ if (sub == NULL) {
1824
+ sub = (struct envoy_config_route_v3_RouteAction_MaxStreamDuration*)_upb_msg_new(&envoy_config_route_v3_RouteAction_MaxStreamDuration_msginit, arena);
1825
+ if (!sub) return NULL;
1826
+ envoy_config_route_v3_RouteAction_set_max_stream_duration(msg, sub);
1827
+ }
1828
+ return sub;
1829
+ }
1830
+ UPB_INLINE void envoy_config_route_v3_RouteAction_set_cluster_specifier_plugin(envoy_config_route_v3_RouteAction *msg, upb_strview value) {
1831
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(96, 176), value, UPB_SIZE(104, 192), 37);
1832
+ }
1833
+
1834
+ /* envoy.config.route.v3.RouteAction.RequestMirrorPolicy */
1835
+
1836
+ UPB_INLINE envoy_config_route_v3_RouteAction_RequestMirrorPolicy *envoy_config_route_v3_RouteAction_RequestMirrorPolicy_new(upb_arena *arena) {
1837
+ return (envoy_config_route_v3_RouteAction_RequestMirrorPolicy *)_upb_msg_new(&envoy_config_route_v3_RouteAction_RequestMirrorPolicy_msginit, arena);
1838
+ }
1839
+ UPB_INLINE envoy_config_route_v3_RouteAction_RequestMirrorPolicy *envoy_config_route_v3_RouteAction_RequestMirrorPolicy_parse(const char *buf, size_t size,
1840
+ upb_arena *arena) {
1841
+ envoy_config_route_v3_RouteAction_RequestMirrorPolicy *ret = envoy_config_route_v3_RouteAction_RequestMirrorPolicy_new(arena);
1842
+ if (!ret) return NULL;
1843
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_RequestMirrorPolicy_msginit, arena)) return NULL;
1844
+ return ret;
1845
+ }
1846
+ UPB_INLINE envoy_config_route_v3_RouteAction_RequestMirrorPolicy *envoy_config_route_v3_RouteAction_RequestMirrorPolicy_parse_ex(const char *buf, size_t size,
1847
+ const upb_extreg *extreg, int options,
1848
+ upb_arena *arena) {
1849
+ envoy_config_route_v3_RouteAction_RequestMirrorPolicy *ret = envoy_config_route_v3_RouteAction_RequestMirrorPolicy_new(arena);
1850
+ if (!ret) return NULL;
1851
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_RequestMirrorPolicy_msginit, extreg, options, arena)) {
1852
+ return NULL;
1853
+ }
1854
+ return ret;
1855
+ }
1856
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_RequestMirrorPolicy_serialize(const envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg, upb_arena *arena, size_t *len) {
1857
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_RequestMirrorPolicy_msginit, arena, len);
1858
+ }
1859
+
1860
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_RequestMirrorPolicy_cluster(const envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
1861
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_RequestMirrorPolicy_has_runtime_fraction(const envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg) { return _upb_hasbit(msg, 1); }
1862
+ UPB_INLINE const struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_RouteAction_RequestMirrorPolicy_runtime_fraction(const envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_config_core_v3_RuntimeFractionalPercent*); }
1863
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_RequestMirrorPolicy_has_trace_sampled(const envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg) { return _upb_hasbit(msg, 2); }
1864
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_RequestMirrorPolicy_trace_sampled(const envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const struct google_protobuf_BoolValue*); }
1865
+
1866
+ UPB_INLINE void envoy_config_route_v3_RouteAction_RequestMirrorPolicy_set_cluster(envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg, upb_strview value) {
1867
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
1868
+ }
1869
+ UPB_INLINE void envoy_config_route_v3_RouteAction_RequestMirrorPolicy_set_runtime_fraction(envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg, struct envoy_config_core_v3_RuntimeFractionalPercent* value) {
1870
+ _upb_sethas(msg, 1);
1871
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct envoy_config_core_v3_RuntimeFractionalPercent*) = value;
1872
+ }
1873
+ UPB_INLINE struct envoy_config_core_v3_RuntimeFractionalPercent* envoy_config_route_v3_RouteAction_RequestMirrorPolicy_mutable_runtime_fraction(envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg, upb_arena *arena) {
1874
+ struct envoy_config_core_v3_RuntimeFractionalPercent* sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)envoy_config_route_v3_RouteAction_RequestMirrorPolicy_runtime_fraction(msg);
1875
+ if (sub == NULL) {
1876
+ sub = (struct envoy_config_core_v3_RuntimeFractionalPercent*)_upb_msg_new(&envoy_config_core_v3_RuntimeFractionalPercent_msginit, arena);
1877
+ if (!sub) return NULL;
1878
+ envoy_config_route_v3_RouteAction_RequestMirrorPolicy_set_runtime_fraction(msg, sub);
1879
+ }
1880
+ return sub;
1881
+ }
1882
+ UPB_INLINE void envoy_config_route_v3_RouteAction_RequestMirrorPolicy_set_trace_sampled(envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg, struct google_protobuf_BoolValue* value) {
1883
+ _upb_sethas(msg, 2);
1884
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 32), struct google_protobuf_BoolValue*) = value;
1885
+ }
1886
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_RequestMirrorPolicy_mutable_trace_sampled(envoy_config_route_v3_RouteAction_RequestMirrorPolicy *msg, upb_arena *arena) {
1887
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteAction_RequestMirrorPolicy_trace_sampled(msg);
1888
+ if (sub == NULL) {
1889
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
1890
+ if (!sub) return NULL;
1891
+ envoy_config_route_v3_RouteAction_RequestMirrorPolicy_set_trace_sampled(msg, sub);
1892
+ }
1893
+ return sub;
1894
+ }
1895
+
1896
+ /* envoy.config.route.v3.RouteAction.HashPolicy */
1897
+
1898
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy *envoy_config_route_v3_RouteAction_HashPolicy_new(upb_arena *arena) {
1899
+ return (envoy_config_route_v3_RouteAction_HashPolicy *)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_msginit, arena);
1900
+ }
1901
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy *envoy_config_route_v3_RouteAction_HashPolicy_parse(const char *buf, size_t size,
1902
+ upb_arena *arena) {
1903
+ envoy_config_route_v3_RouteAction_HashPolicy *ret = envoy_config_route_v3_RouteAction_HashPolicy_new(arena);
1904
+ if (!ret) return NULL;
1905
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_msginit, arena)) return NULL;
1906
+ return ret;
1907
+ }
1908
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy *envoy_config_route_v3_RouteAction_HashPolicy_parse_ex(const char *buf, size_t size,
1909
+ const upb_extreg *extreg, int options,
1910
+ upb_arena *arena) {
1911
+ envoy_config_route_v3_RouteAction_HashPolicy *ret = envoy_config_route_v3_RouteAction_HashPolicy_new(arena);
1912
+ if (!ret) return NULL;
1913
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_msginit, extreg, options, arena)) {
1914
+ return NULL;
1915
+ }
1916
+ return ret;
1917
+ }
1918
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_HashPolicy_serialize(const envoy_config_route_v3_RouteAction_HashPolicy *msg, upb_arena *arena, size_t *len) {
1919
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_HashPolicy_msginit, arena, len);
1920
+ }
1921
+
1922
+ typedef enum {
1923
+ envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_header = 1,
1924
+ envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_cookie = 2,
1925
+ envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_connection_properties = 3,
1926
+ envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_query_parameter = 5,
1927
+ envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_filter_state = 6,
1928
+ envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_NOT_SET = 0
1929
+ } envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_oneofcases;
1930
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_oneofcases envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_case(const envoy_config_route_v3_RouteAction_HashPolicy* msg) { return (envoy_config_route_v3_RouteAction_HashPolicy_policy_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(8, 16), int32_t); }
1931
+
1932
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_has_header(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 1; }
1933
+ UPB_INLINE const envoy_config_route_v3_RouteAction_HashPolicy_Header* envoy_config_route_v3_RouteAction_HashPolicy_header(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteAction_HashPolicy_Header*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 1, NULL); }
1934
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_has_cookie(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 2; }
1935
+ UPB_INLINE const envoy_config_route_v3_RouteAction_HashPolicy_Cookie* envoy_config_route_v3_RouteAction_HashPolicy_cookie(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteAction_HashPolicy_Cookie*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 2, NULL); }
1936
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_has_connection_properties(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 3; }
1937
+ UPB_INLINE const envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties* envoy_config_route_v3_RouteAction_HashPolicy_connection_properties(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 3, NULL); }
1938
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_terminal(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool); }
1939
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_has_query_parameter(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 5; }
1940
+ UPB_INLINE const envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter* envoy_config_route_v3_RouteAction_HashPolicy_query_parameter(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 5, NULL); }
1941
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_has_filter_state(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 6; }
1942
+ UPB_INLINE const envoy_config_route_v3_RouteAction_HashPolicy_FilterState* envoy_config_route_v3_RouteAction_HashPolicy_filter_state(const envoy_config_route_v3_RouteAction_HashPolicy *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RouteAction_HashPolicy_FilterState*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 6, NULL); }
1943
+
1944
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_set_header(envoy_config_route_v3_RouteAction_HashPolicy *msg, envoy_config_route_v3_RouteAction_HashPolicy_Header* value) {
1945
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteAction_HashPolicy_Header*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 1);
1946
+ }
1947
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy_Header* envoy_config_route_v3_RouteAction_HashPolicy_mutable_header(envoy_config_route_v3_RouteAction_HashPolicy *msg, upb_arena *arena) {
1948
+ struct envoy_config_route_v3_RouteAction_HashPolicy_Header* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_Header*)envoy_config_route_v3_RouteAction_HashPolicy_header(msg);
1949
+ if (sub == NULL) {
1950
+ sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_Header*)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_Header_msginit, arena);
1951
+ if (!sub) return NULL;
1952
+ envoy_config_route_v3_RouteAction_HashPolicy_set_header(msg, sub);
1953
+ }
1954
+ return sub;
1955
+ }
1956
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_set_cookie(envoy_config_route_v3_RouteAction_HashPolicy *msg, envoy_config_route_v3_RouteAction_HashPolicy_Cookie* value) {
1957
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteAction_HashPolicy_Cookie*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 2);
1958
+ }
1959
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy_Cookie* envoy_config_route_v3_RouteAction_HashPolicy_mutable_cookie(envoy_config_route_v3_RouteAction_HashPolicy *msg, upb_arena *arena) {
1960
+ struct envoy_config_route_v3_RouteAction_HashPolicy_Cookie* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_Cookie*)envoy_config_route_v3_RouteAction_HashPolicy_cookie(msg);
1961
+ if (sub == NULL) {
1962
+ sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_Cookie*)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_Cookie_msginit, arena);
1963
+ if (!sub) return NULL;
1964
+ envoy_config_route_v3_RouteAction_HashPolicy_set_cookie(msg, sub);
1965
+ }
1966
+ return sub;
1967
+ }
1968
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_set_connection_properties(envoy_config_route_v3_RouteAction_HashPolicy *msg, envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties* value) {
1969
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 3);
1970
+ }
1971
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties* envoy_config_route_v3_RouteAction_HashPolicy_mutable_connection_properties(envoy_config_route_v3_RouteAction_HashPolicy *msg, upb_arena *arena) {
1972
+ struct envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties*)envoy_config_route_v3_RouteAction_HashPolicy_connection_properties(msg);
1973
+ if (sub == NULL) {
1974
+ sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties*)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_msginit, arena);
1975
+ if (!sub) return NULL;
1976
+ envoy_config_route_v3_RouteAction_HashPolicy_set_connection_properties(msg, sub);
1977
+ }
1978
+ return sub;
1979
+ }
1980
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_set_terminal(envoy_config_route_v3_RouteAction_HashPolicy *msg, bool value) {
1981
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = value;
1982
+ }
1983
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_set_query_parameter(envoy_config_route_v3_RouteAction_HashPolicy *msg, envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter* value) {
1984
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 5);
1985
+ }
1986
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter* envoy_config_route_v3_RouteAction_HashPolicy_mutable_query_parameter(envoy_config_route_v3_RouteAction_HashPolicy *msg, upb_arena *arena) {
1987
+ struct envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter*)envoy_config_route_v3_RouteAction_HashPolicy_query_parameter(msg);
1988
+ if (sub == NULL) {
1989
+ sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter*)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_msginit, arena);
1990
+ if (!sub) return NULL;
1991
+ envoy_config_route_v3_RouteAction_HashPolicy_set_query_parameter(msg, sub);
1992
+ }
1993
+ return sub;
1994
+ }
1995
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_set_filter_state(envoy_config_route_v3_RouteAction_HashPolicy *msg, envoy_config_route_v3_RouteAction_HashPolicy_FilterState* value) {
1996
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RouteAction_HashPolicy_FilterState*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 6);
1997
+ }
1998
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_HashPolicy_FilterState* envoy_config_route_v3_RouteAction_HashPolicy_mutable_filter_state(envoy_config_route_v3_RouteAction_HashPolicy *msg, upb_arena *arena) {
1999
+ struct envoy_config_route_v3_RouteAction_HashPolicy_FilterState* sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_FilterState*)envoy_config_route_v3_RouteAction_HashPolicy_filter_state(msg);
2000
+ if (sub == NULL) {
2001
+ sub = (struct envoy_config_route_v3_RouteAction_HashPolicy_FilterState*)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_FilterState_msginit, arena);
2002
+ if (!sub) return NULL;
2003
+ envoy_config_route_v3_RouteAction_HashPolicy_set_filter_state(msg, sub);
2004
+ }
2005
+ return sub;
2006
+ }
2007
+
2008
+ /* envoy.config.route.v3.RouteAction.HashPolicy.Header */
2009
+
2010
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_Header *envoy_config_route_v3_RouteAction_HashPolicy_Header_new(upb_arena *arena) {
2011
+ return (envoy_config_route_v3_RouteAction_HashPolicy_Header *)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_Header_msginit, arena);
2012
+ }
2013
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_Header *envoy_config_route_v3_RouteAction_HashPolicy_Header_parse(const char *buf, size_t size,
2014
+ upb_arena *arena) {
2015
+ envoy_config_route_v3_RouteAction_HashPolicy_Header *ret = envoy_config_route_v3_RouteAction_HashPolicy_Header_new(arena);
2016
+ if (!ret) return NULL;
2017
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_Header_msginit, arena)) return NULL;
2018
+ return ret;
2019
+ }
2020
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_Header *envoy_config_route_v3_RouteAction_HashPolicy_Header_parse_ex(const char *buf, size_t size,
2021
+ const upb_extreg *extreg, int options,
2022
+ upb_arena *arena) {
2023
+ envoy_config_route_v3_RouteAction_HashPolicy_Header *ret = envoy_config_route_v3_RouteAction_HashPolicy_Header_new(arena);
2024
+ if (!ret) return NULL;
2025
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_Header_msginit, extreg, options, arena)) {
2026
+ return NULL;
2027
+ }
2028
+ return ret;
2029
+ }
2030
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_HashPolicy_Header_serialize(const envoy_config_route_v3_RouteAction_HashPolicy_Header *msg, upb_arena *arena, size_t *len) {
2031
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_HashPolicy_Header_msginit, arena, len);
2032
+ }
2033
+
2034
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_HashPolicy_Header_header_name(const envoy_config_route_v3_RouteAction_HashPolicy_Header *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
2035
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_Header_has_regex_rewrite(const envoy_config_route_v3_RouteAction_HashPolicy_Header *msg) { return _upb_hasbit(msg, 1); }
2036
+ UPB_INLINE const struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RouteAction_HashPolicy_Header_regex_rewrite(const envoy_config_route_v3_RouteAction_HashPolicy_Header *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_type_matcher_v3_RegexMatchAndSubstitute*); }
2037
+
2038
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_Header_set_header_name(envoy_config_route_v3_RouteAction_HashPolicy_Header *msg, upb_strview value) {
2039
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
2040
+ }
2041
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_Header_set_regex_rewrite(envoy_config_route_v3_RouteAction_HashPolicy_Header *msg, struct envoy_type_matcher_v3_RegexMatchAndSubstitute* value) {
2042
+ _upb_sethas(msg, 1);
2043
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct envoy_type_matcher_v3_RegexMatchAndSubstitute*) = value;
2044
+ }
2045
+ UPB_INLINE struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RouteAction_HashPolicy_Header_mutable_regex_rewrite(envoy_config_route_v3_RouteAction_HashPolicy_Header *msg, upb_arena *arena) {
2046
+ struct envoy_type_matcher_v3_RegexMatchAndSubstitute* sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)envoy_config_route_v3_RouteAction_HashPolicy_Header_regex_rewrite(msg);
2047
+ if (sub == NULL) {
2048
+ sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)_upb_msg_new(&envoy_type_matcher_v3_RegexMatchAndSubstitute_msginit, arena);
2049
+ if (!sub) return NULL;
2050
+ envoy_config_route_v3_RouteAction_HashPolicy_Header_set_regex_rewrite(msg, sub);
2051
+ }
2052
+ return sub;
2053
+ }
2054
+
2055
+ /* envoy.config.route.v3.RouteAction.HashPolicy.Cookie */
2056
+
2057
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_Cookie *envoy_config_route_v3_RouteAction_HashPolicy_Cookie_new(upb_arena *arena) {
2058
+ return (envoy_config_route_v3_RouteAction_HashPolicy_Cookie *)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_Cookie_msginit, arena);
2059
+ }
2060
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_Cookie *envoy_config_route_v3_RouteAction_HashPolicy_Cookie_parse(const char *buf, size_t size,
2061
+ upb_arena *arena) {
2062
+ envoy_config_route_v3_RouteAction_HashPolicy_Cookie *ret = envoy_config_route_v3_RouteAction_HashPolicy_Cookie_new(arena);
2063
+ if (!ret) return NULL;
2064
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_Cookie_msginit, arena)) return NULL;
2065
+ return ret;
2066
+ }
2067
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_Cookie *envoy_config_route_v3_RouteAction_HashPolicy_Cookie_parse_ex(const char *buf, size_t size,
2068
+ const upb_extreg *extreg, int options,
2069
+ upb_arena *arena) {
2070
+ envoy_config_route_v3_RouteAction_HashPolicy_Cookie *ret = envoy_config_route_v3_RouteAction_HashPolicy_Cookie_new(arena);
2071
+ if (!ret) return NULL;
2072
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_Cookie_msginit, extreg, options, arena)) {
2073
+ return NULL;
2074
+ }
2075
+ return ret;
2076
+ }
2077
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_HashPolicy_Cookie_serialize(const envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg, upb_arena *arena, size_t *len) {
2078
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_HashPolicy_Cookie_msginit, arena, len);
2079
+ }
2080
+
2081
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_HashPolicy_Cookie_name(const envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
2082
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_Cookie_has_ttl(const envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg) { return _upb_hasbit(msg, 1); }
2083
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_HashPolicy_Cookie_ttl(const envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), const struct google_protobuf_Duration*); }
2084
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_HashPolicy_Cookie_path(const envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
2085
+
2086
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_Cookie_set_name(envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg, upb_strview value) {
2087
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
2088
+ }
2089
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_Cookie_set_ttl(envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg, struct google_protobuf_Duration* value) {
2090
+ _upb_sethas(msg, 1);
2091
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), struct google_protobuf_Duration*) = value;
2092
+ }
2093
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_HashPolicy_Cookie_mutable_ttl(envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg, upb_arena *arena) {
2094
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_HashPolicy_Cookie_ttl(msg);
2095
+ if (sub == NULL) {
2096
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2097
+ if (!sub) return NULL;
2098
+ envoy_config_route_v3_RouteAction_HashPolicy_Cookie_set_ttl(msg, sub);
2099
+ }
2100
+ return sub;
2101
+ }
2102
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_Cookie_set_path(envoy_config_route_v3_RouteAction_HashPolicy_Cookie *msg, upb_strview value) {
2103
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
2104
+ }
2105
+
2106
+ /* envoy.config.route.v3.RouteAction.HashPolicy.ConnectionProperties */
2107
+
2108
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_new(upb_arena *arena) {
2109
+ return (envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_msginit, arena);
2110
+ }
2111
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_parse(const char *buf, size_t size,
2112
+ upb_arena *arena) {
2113
+ envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *ret = envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_new(arena);
2114
+ if (!ret) return NULL;
2115
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_msginit, arena)) return NULL;
2116
+ return ret;
2117
+ }
2118
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_parse_ex(const char *buf, size_t size,
2119
+ const upb_extreg *extreg, int options,
2120
+ upb_arena *arena) {
2121
+ envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *ret = envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_new(arena);
2122
+ if (!ret) return NULL;
2123
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_msginit, extreg, options, arena)) {
2124
+ return NULL;
2125
+ }
2126
+ return ret;
2127
+ }
2128
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_serialize(const envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *msg, upb_arena *arena, size_t *len) {
2129
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_msginit, arena, len);
2130
+ }
2131
+
2132
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_source_ip(const envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool); }
2133
+
2134
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties_set_source_ip(envoy_config_route_v3_RouteAction_HashPolicy_ConnectionProperties *msg, bool value) {
2135
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = value;
2136
+ }
2137
+
2138
+ /* envoy.config.route.v3.RouteAction.HashPolicy.QueryParameter */
2139
+
2140
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_new(upb_arena *arena) {
2141
+ return (envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_msginit, arena);
2142
+ }
2143
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_parse(const char *buf, size_t size,
2144
+ upb_arena *arena) {
2145
+ envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *ret = envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_new(arena);
2146
+ if (!ret) return NULL;
2147
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_msginit, arena)) return NULL;
2148
+ return ret;
2149
+ }
2150
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_parse_ex(const char *buf, size_t size,
2151
+ const upb_extreg *extreg, int options,
2152
+ upb_arena *arena) {
2153
+ envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *ret = envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_new(arena);
2154
+ if (!ret) return NULL;
2155
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_msginit, extreg, options, arena)) {
2156
+ return NULL;
2157
+ }
2158
+ return ret;
2159
+ }
2160
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_serialize(const envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *msg, upb_arena *arena, size_t *len) {
2161
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_msginit, arena, len);
2162
+ }
2163
+
2164
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_name(const envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
2165
+
2166
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter_set_name(envoy_config_route_v3_RouteAction_HashPolicy_QueryParameter *msg, upb_strview value) {
2167
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
2168
+ }
2169
+
2170
+ /* envoy.config.route.v3.RouteAction.HashPolicy.FilterState */
2171
+
2172
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_FilterState *envoy_config_route_v3_RouteAction_HashPolicy_FilterState_new(upb_arena *arena) {
2173
+ return (envoy_config_route_v3_RouteAction_HashPolicy_FilterState *)_upb_msg_new(&envoy_config_route_v3_RouteAction_HashPolicy_FilterState_msginit, arena);
2174
+ }
2175
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_FilterState *envoy_config_route_v3_RouteAction_HashPolicy_FilterState_parse(const char *buf, size_t size,
2176
+ upb_arena *arena) {
2177
+ envoy_config_route_v3_RouteAction_HashPolicy_FilterState *ret = envoy_config_route_v3_RouteAction_HashPolicy_FilterState_new(arena);
2178
+ if (!ret) return NULL;
2179
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_FilterState_msginit, arena)) return NULL;
2180
+ return ret;
2181
+ }
2182
+ UPB_INLINE envoy_config_route_v3_RouteAction_HashPolicy_FilterState *envoy_config_route_v3_RouteAction_HashPolicy_FilterState_parse_ex(const char *buf, size_t size,
2183
+ const upb_extreg *extreg, int options,
2184
+ upb_arena *arena) {
2185
+ envoy_config_route_v3_RouteAction_HashPolicy_FilterState *ret = envoy_config_route_v3_RouteAction_HashPolicy_FilterState_new(arena);
2186
+ if (!ret) return NULL;
2187
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_HashPolicy_FilterState_msginit, extreg, options, arena)) {
2188
+ return NULL;
2189
+ }
2190
+ return ret;
2191
+ }
2192
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_HashPolicy_FilterState_serialize(const envoy_config_route_v3_RouteAction_HashPolicy_FilterState *msg, upb_arena *arena, size_t *len) {
2193
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_HashPolicy_FilterState_msginit, arena, len);
2194
+ }
2195
+
2196
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_HashPolicy_FilterState_key(const envoy_config_route_v3_RouteAction_HashPolicy_FilterState *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
2197
+
2198
+ UPB_INLINE void envoy_config_route_v3_RouteAction_HashPolicy_FilterState_set_key(envoy_config_route_v3_RouteAction_HashPolicy_FilterState *msg, upb_strview value) {
2199
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
2200
+ }
2201
+
2202
+ /* envoy.config.route.v3.RouteAction.UpgradeConfig */
2203
+
2204
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig *envoy_config_route_v3_RouteAction_UpgradeConfig_new(upb_arena *arena) {
2205
+ return (envoy_config_route_v3_RouteAction_UpgradeConfig *)_upb_msg_new(&envoy_config_route_v3_RouteAction_UpgradeConfig_msginit, arena);
2206
+ }
2207
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig *envoy_config_route_v3_RouteAction_UpgradeConfig_parse(const char *buf, size_t size,
2208
+ upb_arena *arena) {
2209
+ envoy_config_route_v3_RouteAction_UpgradeConfig *ret = envoy_config_route_v3_RouteAction_UpgradeConfig_new(arena);
2210
+ if (!ret) return NULL;
2211
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_UpgradeConfig_msginit, arena)) return NULL;
2212
+ return ret;
2213
+ }
2214
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig *envoy_config_route_v3_RouteAction_UpgradeConfig_parse_ex(const char *buf, size_t size,
2215
+ const upb_extreg *extreg, int options,
2216
+ upb_arena *arena) {
2217
+ envoy_config_route_v3_RouteAction_UpgradeConfig *ret = envoy_config_route_v3_RouteAction_UpgradeConfig_new(arena);
2218
+ if (!ret) return NULL;
2219
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_UpgradeConfig_msginit, extreg, options, arena)) {
2220
+ return NULL;
2221
+ }
2222
+ return ret;
2223
+ }
2224
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_UpgradeConfig_serialize(const envoy_config_route_v3_RouteAction_UpgradeConfig *msg, upb_arena *arena, size_t *len) {
2225
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_UpgradeConfig_msginit, arena, len);
2226
+ }
2227
+
2228
+ UPB_INLINE upb_strview envoy_config_route_v3_RouteAction_UpgradeConfig_upgrade_type(const envoy_config_route_v3_RouteAction_UpgradeConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
2229
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_UpgradeConfig_has_enabled(const envoy_config_route_v3_RouteAction_UpgradeConfig *msg) { return _upb_hasbit(msg, 1); }
2230
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_UpgradeConfig_enabled(const envoy_config_route_v3_RouteAction_UpgradeConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_BoolValue*); }
2231
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_UpgradeConfig_has_connect_config(const envoy_config_route_v3_RouteAction_UpgradeConfig *msg) { return _upb_hasbit(msg, 2); }
2232
+ UPB_INLINE const envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig* envoy_config_route_v3_RouteAction_UpgradeConfig_connect_config(const envoy_config_route_v3_RouteAction_UpgradeConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig*); }
2233
+
2234
+ UPB_INLINE void envoy_config_route_v3_RouteAction_UpgradeConfig_set_upgrade_type(envoy_config_route_v3_RouteAction_UpgradeConfig *msg, upb_strview value) {
2235
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
2236
+ }
2237
+ UPB_INLINE void envoy_config_route_v3_RouteAction_UpgradeConfig_set_enabled(envoy_config_route_v3_RouteAction_UpgradeConfig *msg, struct google_protobuf_BoolValue* value) {
2238
+ _upb_sethas(msg, 1);
2239
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_BoolValue*) = value;
2240
+ }
2241
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RouteAction_UpgradeConfig_mutable_enabled(envoy_config_route_v3_RouteAction_UpgradeConfig *msg, upb_arena *arena) {
2242
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RouteAction_UpgradeConfig_enabled(msg);
2243
+ if (sub == NULL) {
2244
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
2245
+ if (!sub) return NULL;
2246
+ envoy_config_route_v3_RouteAction_UpgradeConfig_set_enabled(msg, sub);
2247
+ }
2248
+ return sub;
2249
+ }
2250
+ UPB_INLINE void envoy_config_route_v3_RouteAction_UpgradeConfig_set_connect_config(envoy_config_route_v3_RouteAction_UpgradeConfig *msg, envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig* value) {
2251
+ _upb_sethas(msg, 2);
2252
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 32), envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig*) = value;
2253
+ }
2254
+ UPB_INLINE struct envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig* envoy_config_route_v3_RouteAction_UpgradeConfig_mutable_connect_config(envoy_config_route_v3_RouteAction_UpgradeConfig *msg, upb_arena *arena) {
2255
+ struct envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig* sub = (struct envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig*)envoy_config_route_v3_RouteAction_UpgradeConfig_connect_config(msg);
2256
+ if (sub == NULL) {
2257
+ sub = (struct envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig*)_upb_msg_new(&envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_msginit, arena);
2258
+ if (!sub) return NULL;
2259
+ envoy_config_route_v3_RouteAction_UpgradeConfig_set_connect_config(msg, sub);
2260
+ }
2261
+ return sub;
2262
+ }
2263
+
2264
+ /* envoy.config.route.v3.RouteAction.UpgradeConfig.ConnectConfig */
2265
+
2266
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_new(upb_arena *arena) {
2267
+ return (envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *)_upb_msg_new(&envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_msginit, arena);
2268
+ }
2269
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_parse(const char *buf, size_t size,
2270
+ upb_arena *arena) {
2271
+ envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *ret = envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_new(arena);
2272
+ if (!ret) return NULL;
2273
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_msginit, arena)) return NULL;
2274
+ return ret;
2275
+ }
2276
+ UPB_INLINE envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_parse_ex(const char *buf, size_t size,
2277
+ const upb_extreg *extreg, int options,
2278
+ upb_arena *arena) {
2279
+ envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *ret = envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_new(arena);
2280
+ if (!ret) return NULL;
2281
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_msginit, extreg, options, arena)) {
2282
+ return NULL;
2283
+ }
2284
+ return ret;
2285
+ }
2286
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_serialize(const envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg, upb_arena *arena, size_t *len) {
2287
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_msginit, arena, len);
2288
+ }
2289
+
2290
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_has_proxy_protocol_config(const envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg) { return _upb_hasbit(msg, 1); }
2291
+ UPB_INLINE const struct envoy_config_core_v3_ProxyProtocolConfig* envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_proxy_protocol_config(const envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_ProxyProtocolConfig*); }
2292
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_allow_post(const envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
2293
+
2294
+ UPB_INLINE void envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_set_proxy_protocol_config(envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg, struct envoy_config_core_v3_ProxyProtocolConfig* value) {
2295
+ _upb_sethas(msg, 1);
2296
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_ProxyProtocolConfig*) = value;
2297
+ }
2298
+ UPB_INLINE struct envoy_config_core_v3_ProxyProtocolConfig* envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_mutable_proxy_protocol_config(envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg, upb_arena *arena) {
2299
+ struct envoy_config_core_v3_ProxyProtocolConfig* sub = (struct envoy_config_core_v3_ProxyProtocolConfig*)envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_proxy_protocol_config(msg);
2300
+ if (sub == NULL) {
2301
+ sub = (struct envoy_config_core_v3_ProxyProtocolConfig*)_upb_msg_new(&envoy_config_core_v3_ProxyProtocolConfig_msginit, arena);
2302
+ if (!sub) return NULL;
2303
+ envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_set_proxy_protocol_config(msg, sub);
2304
+ }
2305
+ return sub;
2306
+ }
2307
+ UPB_INLINE void envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig_set_allow_post(envoy_config_route_v3_RouteAction_UpgradeConfig_ConnectConfig *msg, bool value) {
2308
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
2309
+ }
2310
+
2311
+ /* envoy.config.route.v3.RouteAction.MaxStreamDuration */
2312
+
2313
+ UPB_INLINE envoy_config_route_v3_RouteAction_MaxStreamDuration *envoy_config_route_v3_RouteAction_MaxStreamDuration_new(upb_arena *arena) {
2314
+ return (envoy_config_route_v3_RouteAction_MaxStreamDuration *)_upb_msg_new(&envoy_config_route_v3_RouteAction_MaxStreamDuration_msginit, arena);
2315
+ }
2316
+ UPB_INLINE envoy_config_route_v3_RouteAction_MaxStreamDuration *envoy_config_route_v3_RouteAction_MaxStreamDuration_parse(const char *buf, size_t size,
2317
+ upb_arena *arena) {
2318
+ envoy_config_route_v3_RouteAction_MaxStreamDuration *ret = envoy_config_route_v3_RouteAction_MaxStreamDuration_new(arena);
2319
+ if (!ret) return NULL;
2320
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_MaxStreamDuration_msginit, arena)) return NULL;
2321
+ return ret;
2322
+ }
2323
+ UPB_INLINE envoy_config_route_v3_RouteAction_MaxStreamDuration *envoy_config_route_v3_RouteAction_MaxStreamDuration_parse_ex(const char *buf, size_t size,
2324
+ const upb_extreg *extreg, int options,
2325
+ upb_arena *arena) {
2326
+ envoy_config_route_v3_RouteAction_MaxStreamDuration *ret = envoy_config_route_v3_RouteAction_MaxStreamDuration_new(arena);
2327
+ if (!ret) return NULL;
2328
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RouteAction_MaxStreamDuration_msginit, extreg, options, arena)) {
2329
+ return NULL;
2330
+ }
2331
+ return ret;
2332
+ }
2333
+ UPB_INLINE char *envoy_config_route_v3_RouteAction_MaxStreamDuration_serialize(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, upb_arena *arena, size_t *len) {
2334
+ return upb_encode(msg, &envoy_config_route_v3_RouteAction_MaxStreamDuration_msginit, arena, len);
2335
+ }
2336
+
2337
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_MaxStreamDuration_has_max_stream_duration(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg) { return _upb_hasbit(msg, 1); }
2338
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_MaxStreamDuration_max_stream_duration(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*); }
2339
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_MaxStreamDuration_has_grpc_timeout_header_max(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg) { return _upb_hasbit(msg, 2); }
2340
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_MaxStreamDuration_grpc_timeout_header_max(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_Duration*); }
2341
+ UPB_INLINE bool envoy_config_route_v3_RouteAction_MaxStreamDuration_has_grpc_timeout_header_offset(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg) { return _upb_hasbit(msg, 3); }
2342
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_MaxStreamDuration_grpc_timeout_header_offset(const envoy_config_route_v3_RouteAction_MaxStreamDuration *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_Duration*); }
2343
+
2344
+ UPB_INLINE void envoy_config_route_v3_RouteAction_MaxStreamDuration_set_max_stream_duration(envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, struct google_protobuf_Duration* value) {
2345
+ _upb_sethas(msg, 1);
2346
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
2347
+ }
2348
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_MaxStreamDuration_mutable_max_stream_duration(envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, upb_arena *arena) {
2349
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_MaxStreamDuration_max_stream_duration(msg);
2350
+ if (sub == NULL) {
2351
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2352
+ if (!sub) return NULL;
2353
+ envoy_config_route_v3_RouteAction_MaxStreamDuration_set_max_stream_duration(msg, sub);
2354
+ }
2355
+ return sub;
2356
+ }
2357
+ UPB_INLINE void envoy_config_route_v3_RouteAction_MaxStreamDuration_set_grpc_timeout_header_max(envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, struct google_protobuf_Duration* value) {
2358
+ _upb_sethas(msg, 2);
2359
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_Duration*) = value;
2360
+ }
2361
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_MaxStreamDuration_mutable_grpc_timeout_header_max(envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, upb_arena *arena) {
2362
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_MaxStreamDuration_grpc_timeout_header_max(msg);
2363
+ if (sub == NULL) {
2364
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2365
+ if (!sub) return NULL;
2366
+ envoy_config_route_v3_RouteAction_MaxStreamDuration_set_grpc_timeout_header_max(msg, sub);
2367
+ }
2368
+ return sub;
2369
+ }
2370
+ UPB_INLINE void envoy_config_route_v3_RouteAction_MaxStreamDuration_set_grpc_timeout_header_offset(envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, struct google_protobuf_Duration* value) {
2371
+ _upb_sethas(msg, 3);
2372
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_Duration*) = value;
2373
+ }
2374
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RouteAction_MaxStreamDuration_mutable_grpc_timeout_header_offset(envoy_config_route_v3_RouteAction_MaxStreamDuration *msg, upb_arena *arena) {
2375
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RouteAction_MaxStreamDuration_grpc_timeout_header_offset(msg);
2376
+ if (sub == NULL) {
2377
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2378
+ if (!sub) return NULL;
2379
+ envoy_config_route_v3_RouteAction_MaxStreamDuration_set_grpc_timeout_header_offset(msg, sub);
2380
+ }
2381
+ return sub;
2382
+ }
2383
+
2384
+ /* envoy.config.route.v3.RetryPolicy */
2385
+
2386
+ UPB_INLINE envoy_config_route_v3_RetryPolicy *envoy_config_route_v3_RetryPolicy_new(upb_arena *arena) {
2387
+ return (envoy_config_route_v3_RetryPolicy *)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_msginit, arena);
2388
+ }
2389
+ UPB_INLINE envoy_config_route_v3_RetryPolicy *envoy_config_route_v3_RetryPolicy_parse(const char *buf, size_t size,
2390
+ upb_arena *arena) {
2391
+ envoy_config_route_v3_RetryPolicy *ret = envoy_config_route_v3_RetryPolicy_new(arena);
2392
+ if (!ret) return NULL;
2393
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_msginit, arena)) return NULL;
2394
+ return ret;
2395
+ }
2396
+ UPB_INLINE envoy_config_route_v3_RetryPolicy *envoy_config_route_v3_RetryPolicy_parse_ex(const char *buf, size_t size,
2397
+ const upb_extreg *extreg, int options,
2398
+ upb_arena *arena) {
2399
+ envoy_config_route_v3_RetryPolicy *ret = envoy_config_route_v3_RetryPolicy_new(arena);
2400
+ if (!ret) return NULL;
2401
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_msginit, extreg, options, arena)) {
2402
+ return NULL;
2403
+ }
2404
+ return ret;
2405
+ }
2406
+ UPB_INLINE char *envoy_config_route_v3_RetryPolicy_serialize(const envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena, size_t *len) {
2407
+ return upb_encode(msg, &envoy_config_route_v3_RetryPolicy_msginit, arena, len);
2408
+ }
2409
+
2410
+ UPB_INLINE upb_strview envoy_config_route_v3_RetryPolicy_retry_on(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 16), upb_strview); }
2411
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_num_retries(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_hasbit(msg, 1); }
2412
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_RetryPolicy_num_retries(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(24, 32), const struct google_protobuf_UInt32Value*); }
2413
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_per_try_timeout(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_hasbit(msg, 2); }
2414
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_per_try_timeout(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(28, 40), const struct google_protobuf_Duration*); }
2415
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_retry_priority(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_hasbit(msg, 3); }
2416
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy_RetryPriority* envoy_config_route_v3_RetryPolicy_retry_priority(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(32, 48), const envoy_config_route_v3_RetryPolicy_RetryPriority*); }
2417
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_retry_host_predicate(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(48, 80)); }
2418
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy_RetryHostPredicate* const* envoy_config_route_v3_RetryPolicy_retry_host_predicate(const envoy_config_route_v3_RetryPolicy *msg, size_t *len) { return (const envoy_config_route_v3_RetryPolicy_RetryHostPredicate* const*)_upb_array_accessor(msg, UPB_SIZE(48, 80), len); }
2419
+ UPB_INLINE int64_t envoy_config_route_v3_RetryPolicy_host_selection_retry_max_attempts(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t); }
2420
+ UPB_INLINE uint32_t const* envoy_config_route_v3_RetryPolicy_retriable_status_codes(const envoy_config_route_v3_RetryPolicy *msg, size_t *len) { return (uint32_t const*)_upb_array_accessor(msg, UPB_SIZE(52, 88), len); }
2421
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_retry_back_off(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_hasbit(msg, 4); }
2422
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy_RetryBackOff* envoy_config_route_v3_RetryPolicy_retry_back_off(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(36, 56), const envoy_config_route_v3_RetryPolicy_RetryBackOff*); }
2423
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_retriable_headers(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(56, 96)); }
2424
+ UPB_INLINE const envoy_config_route_v3_HeaderMatcher* const* envoy_config_route_v3_RetryPolicy_retriable_headers(const envoy_config_route_v3_RetryPolicy *msg, size_t *len) { return (const envoy_config_route_v3_HeaderMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(56, 96), len); }
2425
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_retriable_request_headers(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(60, 104)); }
2426
+ UPB_INLINE const envoy_config_route_v3_HeaderMatcher* const* envoy_config_route_v3_RetryPolicy_retriable_request_headers(const envoy_config_route_v3_RetryPolicy *msg, size_t *len) { return (const envoy_config_route_v3_HeaderMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(60, 104), len); }
2427
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_rate_limited_retry_back_off(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_hasbit(msg, 5); }
2428
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff* envoy_config_route_v3_RetryPolicy_rate_limited_retry_back_off(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(40, 64), const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff*); }
2429
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_retry_options_predicates(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(64, 112)); }
2430
+ UPB_INLINE const struct envoy_config_core_v3_TypedExtensionConfig* const* envoy_config_route_v3_RetryPolicy_retry_options_predicates(const envoy_config_route_v3_RetryPolicy *msg, size_t *len) { return (const struct envoy_config_core_v3_TypedExtensionConfig* const*)_upb_array_accessor(msg, UPB_SIZE(64, 112), len); }
2431
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_has_per_try_idle_timeout(const envoy_config_route_v3_RetryPolicy *msg) { return _upb_hasbit(msg, 6); }
2432
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_per_try_idle_timeout(const envoy_config_route_v3_RetryPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(44, 72), const struct google_protobuf_Duration*); }
2433
+
2434
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_retry_on(envoy_config_route_v3_RetryPolicy *msg, upb_strview value) {
2435
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 16), upb_strview) = value;
2436
+ }
2437
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_num_retries(envoy_config_route_v3_RetryPolicy *msg, struct google_protobuf_UInt32Value* value) {
2438
+ _upb_sethas(msg, 1);
2439
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 32), struct google_protobuf_UInt32Value*) = value;
2440
+ }
2441
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_RetryPolicy_mutable_num_retries(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2442
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_RetryPolicy_num_retries(msg);
2443
+ if (sub == NULL) {
2444
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
2445
+ if (!sub) return NULL;
2446
+ envoy_config_route_v3_RetryPolicy_set_num_retries(msg, sub);
2447
+ }
2448
+ return sub;
2449
+ }
2450
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_per_try_timeout(envoy_config_route_v3_RetryPolicy *msg, struct google_protobuf_Duration* value) {
2451
+ _upb_sethas(msg, 2);
2452
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 40), struct google_protobuf_Duration*) = value;
2453
+ }
2454
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_mutable_per_try_timeout(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2455
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RetryPolicy_per_try_timeout(msg);
2456
+ if (sub == NULL) {
2457
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2458
+ if (!sub) return NULL;
2459
+ envoy_config_route_v3_RetryPolicy_set_per_try_timeout(msg, sub);
2460
+ }
2461
+ return sub;
2462
+ }
2463
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_retry_priority(envoy_config_route_v3_RetryPolicy *msg, envoy_config_route_v3_RetryPolicy_RetryPriority* value) {
2464
+ _upb_sethas(msg, 3);
2465
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 48), envoy_config_route_v3_RetryPolicy_RetryPriority*) = value;
2466
+ }
2467
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy_RetryPriority* envoy_config_route_v3_RetryPolicy_mutable_retry_priority(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2468
+ struct envoy_config_route_v3_RetryPolicy_RetryPriority* sub = (struct envoy_config_route_v3_RetryPolicy_RetryPriority*)envoy_config_route_v3_RetryPolicy_retry_priority(msg);
2469
+ if (sub == NULL) {
2470
+ sub = (struct envoy_config_route_v3_RetryPolicy_RetryPriority*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RetryPriority_msginit, arena);
2471
+ if (!sub) return NULL;
2472
+ envoy_config_route_v3_RetryPolicy_set_retry_priority(msg, sub);
2473
+ }
2474
+ return sub;
2475
+ }
2476
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryHostPredicate** envoy_config_route_v3_RetryPolicy_mutable_retry_host_predicate(envoy_config_route_v3_RetryPolicy *msg, size_t *len) {
2477
+ return (envoy_config_route_v3_RetryPolicy_RetryHostPredicate**)_upb_array_mutable_accessor(msg, UPB_SIZE(48, 80), len);
2478
+ }
2479
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryHostPredicate** envoy_config_route_v3_RetryPolicy_resize_retry_host_predicate(envoy_config_route_v3_RetryPolicy *msg, size_t len, upb_arena *arena) {
2480
+ return (envoy_config_route_v3_RetryPolicy_RetryHostPredicate**)_upb_array_resize_accessor2(msg, UPB_SIZE(48, 80), len, UPB_SIZE(2, 3), arena);
2481
+ }
2482
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy_RetryHostPredicate* envoy_config_route_v3_RetryPolicy_add_retry_host_predicate(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2483
+ struct envoy_config_route_v3_RetryPolicy_RetryHostPredicate* sub = (struct envoy_config_route_v3_RetryPolicy_RetryHostPredicate*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RetryHostPredicate_msginit, arena);
2484
+ bool ok = _upb_array_append_accessor2(
2485
+ msg, UPB_SIZE(48, 80), UPB_SIZE(2, 3), &sub, arena);
2486
+ if (!ok) return NULL;
2487
+ return sub;
2488
+ }
2489
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_host_selection_retry_max_attempts(envoy_config_route_v3_RetryPolicy *msg, int64_t value) {
2490
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t) = value;
2491
+ }
2492
+ UPB_INLINE uint32_t* envoy_config_route_v3_RetryPolicy_mutable_retriable_status_codes(envoy_config_route_v3_RetryPolicy *msg, size_t *len) {
2493
+ return (uint32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(52, 88), len);
2494
+ }
2495
+ UPB_INLINE uint32_t* envoy_config_route_v3_RetryPolicy_resize_retriable_status_codes(envoy_config_route_v3_RetryPolicy *msg, size_t len, upb_arena *arena) {
2496
+ return (uint32_t*)_upb_array_resize_accessor2(msg, UPB_SIZE(52, 88), len, 2, arena);
2497
+ }
2498
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_add_retriable_status_codes(envoy_config_route_v3_RetryPolicy *msg, uint32_t val, upb_arena *arena) {
2499
+ return _upb_array_append_accessor2(msg, UPB_SIZE(52, 88), 2, &val,
2500
+ arena);
2501
+ }
2502
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_retry_back_off(envoy_config_route_v3_RetryPolicy *msg, envoy_config_route_v3_RetryPolicy_RetryBackOff* value) {
2503
+ _upb_sethas(msg, 4);
2504
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 56), envoy_config_route_v3_RetryPolicy_RetryBackOff*) = value;
2505
+ }
2506
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy_RetryBackOff* envoy_config_route_v3_RetryPolicy_mutable_retry_back_off(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2507
+ struct envoy_config_route_v3_RetryPolicy_RetryBackOff* sub = (struct envoy_config_route_v3_RetryPolicy_RetryBackOff*)envoy_config_route_v3_RetryPolicy_retry_back_off(msg);
2508
+ if (sub == NULL) {
2509
+ sub = (struct envoy_config_route_v3_RetryPolicy_RetryBackOff*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RetryBackOff_msginit, arena);
2510
+ if (!sub) return NULL;
2511
+ envoy_config_route_v3_RetryPolicy_set_retry_back_off(msg, sub);
2512
+ }
2513
+ return sub;
2514
+ }
2515
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RetryPolicy_mutable_retriable_headers(envoy_config_route_v3_RetryPolicy *msg, size_t *len) {
2516
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(56, 96), len);
2517
+ }
2518
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RetryPolicy_resize_retriable_headers(envoy_config_route_v3_RetryPolicy *msg, size_t len, upb_arena *arena) {
2519
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(56, 96), len, UPB_SIZE(2, 3), arena);
2520
+ }
2521
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_route_v3_RetryPolicy_add_retriable_headers(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2522
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
2523
+ bool ok = _upb_array_append_accessor2(
2524
+ msg, UPB_SIZE(56, 96), UPB_SIZE(2, 3), &sub, arena);
2525
+ if (!ok) return NULL;
2526
+ return sub;
2527
+ }
2528
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RetryPolicy_mutable_retriable_request_headers(envoy_config_route_v3_RetryPolicy *msg, size_t *len) {
2529
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(60, 104), len);
2530
+ }
2531
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RetryPolicy_resize_retriable_request_headers(envoy_config_route_v3_RetryPolicy *msg, size_t len, upb_arena *arena) {
2532
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(60, 104), len, UPB_SIZE(2, 3), arena);
2533
+ }
2534
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_route_v3_RetryPolicy_add_retriable_request_headers(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2535
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
2536
+ bool ok = _upb_array_append_accessor2(
2537
+ msg, UPB_SIZE(60, 104), UPB_SIZE(2, 3), &sub, arena);
2538
+ if (!ok) return NULL;
2539
+ return sub;
2540
+ }
2541
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_rate_limited_retry_back_off(envoy_config_route_v3_RetryPolicy *msg, envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff* value) {
2542
+ _upb_sethas(msg, 5);
2543
+ *UPB_PTR_AT(msg, UPB_SIZE(40, 64), envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff*) = value;
2544
+ }
2545
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff* envoy_config_route_v3_RetryPolicy_mutable_rate_limited_retry_back_off(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2546
+ struct envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff* sub = (struct envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff*)envoy_config_route_v3_RetryPolicy_rate_limited_retry_back_off(msg);
2547
+ if (sub == NULL) {
2548
+ sub = (struct envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_msginit, arena);
2549
+ if (!sub) return NULL;
2550
+ envoy_config_route_v3_RetryPolicy_set_rate_limited_retry_back_off(msg, sub);
2551
+ }
2552
+ return sub;
2553
+ }
2554
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig** envoy_config_route_v3_RetryPolicy_mutable_retry_options_predicates(envoy_config_route_v3_RetryPolicy *msg, size_t *len) {
2555
+ return (struct envoy_config_core_v3_TypedExtensionConfig**)_upb_array_mutable_accessor(msg, UPB_SIZE(64, 112), len);
2556
+ }
2557
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig** envoy_config_route_v3_RetryPolicy_resize_retry_options_predicates(envoy_config_route_v3_RetryPolicy *msg, size_t len, upb_arena *arena) {
2558
+ return (struct envoy_config_core_v3_TypedExtensionConfig**)_upb_array_resize_accessor2(msg, UPB_SIZE(64, 112), len, UPB_SIZE(2, 3), arena);
2559
+ }
2560
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_route_v3_RetryPolicy_add_retry_options_predicates(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2561
+ struct envoy_config_core_v3_TypedExtensionConfig* sub = (struct envoy_config_core_v3_TypedExtensionConfig*)_upb_msg_new(&envoy_config_core_v3_TypedExtensionConfig_msginit, arena);
2562
+ bool ok = _upb_array_append_accessor2(
2563
+ msg, UPB_SIZE(64, 112), UPB_SIZE(2, 3), &sub, arena);
2564
+ if (!ok) return NULL;
2565
+ return sub;
2566
+ }
2567
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_set_per_try_idle_timeout(envoy_config_route_v3_RetryPolicy *msg, struct google_protobuf_Duration* value) {
2568
+ _upb_sethas(msg, 6);
2569
+ *UPB_PTR_AT(msg, UPB_SIZE(44, 72), struct google_protobuf_Duration*) = value;
2570
+ }
2571
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_mutable_per_try_idle_timeout(envoy_config_route_v3_RetryPolicy *msg, upb_arena *arena) {
2572
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RetryPolicy_per_try_idle_timeout(msg);
2573
+ if (sub == NULL) {
2574
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2575
+ if (!sub) return NULL;
2576
+ envoy_config_route_v3_RetryPolicy_set_per_try_idle_timeout(msg, sub);
2577
+ }
2578
+ return sub;
2579
+ }
2580
+
2581
+ /* envoy.config.route.v3.RetryPolicy.RetryPriority */
2582
+
2583
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryPriority *envoy_config_route_v3_RetryPolicy_RetryPriority_new(upb_arena *arena) {
2584
+ return (envoy_config_route_v3_RetryPolicy_RetryPriority *)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RetryPriority_msginit, arena);
2585
+ }
2586
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryPriority *envoy_config_route_v3_RetryPolicy_RetryPriority_parse(const char *buf, size_t size,
2587
+ upb_arena *arena) {
2588
+ envoy_config_route_v3_RetryPolicy_RetryPriority *ret = envoy_config_route_v3_RetryPolicy_RetryPriority_new(arena);
2589
+ if (!ret) return NULL;
2590
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RetryPriority_msginit, arena)) return NULL;
2591
+ return ret;
2592
+ }
2593
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryPriority *envoy_config_route_v3_RetryPolicy_RetryPriority_parse_ex(const char *buf, size_t size,
2594
+ const upb_extreg *extreg, int options,
2595
+ upb_arena *arena) {
2596
+ envoy_config_route_v3_RetryPolicy_RetryPriority *ret = envoy_config_route_v3_RetryPolicy_RetryPriority_new(arena);
2597
+ if (!ret) return NULL;
2598
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RetryPriority_msginit, extreg, options, arena)) {
2599
+ return NULL;
2600
+ }
2601
+ return ret;
2602
+ }
2603
+ UPB_INLINE char *envoy_config_route_v3_RetryPolicy_RetryPriority_serialize(const envoy_config_route_v3_RetryPolicy_RetryPriority *msg, upb_arena *arena, size_t *len) {
2604
+ return upb_encode(msg, &envoy_config_route_v3_RetryPolicy_RetryPriority_msginit, arena, len);
2605
+ }
2606
+
2607
+ typedef enum {
2608
+ envoy_config_route_v3_RetryPolicy_RetryPriority_config_type_typed_config = 3,
2609
+ envoy_config_route_v3_RetryPolicy_RetryPriority_config_type_NOT_SET = 0
2610
+ } envoy_config_route_v3_RetryPolicy_RetryPriority_config_type_oneofcases;
2611
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryPriority_config_type_oneofcases envoy_config_route_v3_RetryPolicy_RetryPriority_config_type_case(const envoy_config_route_v3_RetryPolicy_RetryPriority* msg) { return (envoy_config_route_v3_RetryPolicy_RetryPriority_config_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
2612
+
2613
+ UPB_INLINE upb_strview envoy_config_route_v3_RetryPolicy_RetryPriority_name(const envoy_config_route_v3_RetryPolicy_RetryPriority *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
2614
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_RetryPriority_has_typed_config(const envoy_config_route_v3_RetryPolicy_RetryPriority *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
2615
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_RetryPolicy_RetryPriority_typed_config(const envoy_config_route_v3_RetryPolicy_RetryPriority *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
2616
+
2617
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RetryPriority_set_name(envoy_config_route_v3_RetryPolicy_RetryPriority *msg, upb_strview value) {
2618
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
2619
+ }
2620
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RetryPriority_set_typed_config(envoy_config_route_v3_RetryPolicy_RetryPriority *msg, struct google_protobuf_Any* value) {
2621
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
2622
+ }
2623
+ UPB_INLINE struct google_protobuf_Any* envoy_config_route_v3_RetryPolicy_RetryPriority_mutable_typed_config(envoy_config_route_v3_RetryPolicy_RetryPriority *msg, upb_arena *arena) {
2624
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_route_v3_RetryPolicy_RetryPriority_typed_config(msg);
2625
+ if (sub == NULL) {
2626
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
2627
+ if (!sub) return NULL;
2628
+ envoy_config_route_v3_RetryPolicy_RetryPriority_set_typed_config(msg, sub);
2629
+ }
2630
+ return sub;
2631
+ }
2632
+
2633
+ /* envoy.config.route.v3.RetryPolicy.RetryHostPredicate */
2634
+
2635
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryHostPredicate *envoy_config_route_v3_RetryPolicy_RetryHostPredicate_new(upb_arena *arena) {
2636
+ return (envoy_config_route_v3_RetryPolicy_RetryHostPredicate *)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RetryHostPredicate_msginit, arena);
2637
+ }
2638
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryHostPredicate *envoy_config_route_v3_RetryPolicy_RetryHostPredicate_parse(const char *buf, size_t size,
2639
+ upb_arena *arena) {
2640
+ envoy_config_route_v3_RetryPolicy_RetryHostPredicate *ret = envoy_config_route_v3_RetryPolicy_RetryHostPredicate_new(arena);
2641
+ if (!ret) return NULL;
2642
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RetryHostPredicate_msginit, arena)) return NULL;
2643
+ return ret;
2644
+ }
2645
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryHostPredicate *envoy_config_route_v3_RetryPolicy_RetryHostPredicate_parse_ex(const char *buf, size_t size,
2646
+ const upb_extreg *extreg, int options,
2647
+ upb_arena *arena) {
2648
+ envoy_config_route_v3_RetryPolicy_RetryHostPredicate *ret = envoy_config_route_v3_RetryPolicy_RetryHostPredicate_new(arena);
2649
+ if (!ret) return NULL;
2650
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RetryHostPredicate_msginit, extreg, options, arena)) {
2651
+ return NULL;
2652
+ }
2653
+ return ret;
2654
+ }
2655
+ UPB_INLINE char *envoy_config_route_v3_RetryPolicy_RetryHostPredicate_serialize(const envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg, upb_arena *arena, size_t *len) {
2656
+ return upb_encode(msg, &envoy_config_route_v3_RetryPolicy_RetryHostPredicate_msginit, arena, len);
2657
+ }
2658
+
2659
+ typedef enum {
2660
+ envoy_config_route_v3_RetryPolicy_RetryHostPredicate_config_type_typed_config = 3,
2661
+ envoy_config_route_v3_RetryPolicy_RetryHostPredicate_config_type_NOT_SET = 0
2662
+ } envoy_config_route_v3_RetryPolicy_RetryHostPredicate_config_type_oneofcases;
2663
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryHostPredicate_config_type_oneofcases envoy_config_route_v3_RetryPolicy_RetryHostPredicate_config_type_case(const envoy_config_route_v3_RetryPolicy_RetryHostPredicate* msg) { return (envoy_config_route_v3_RetryPolicy_RetryHostPredicate_config_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
2664
+
2665
+ UPB_INLINE upb_strview envoy_config_route_v3_RetryPolicy_RetryHostPredicate_name(const envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
2666
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_RetryHostPredicate_has_typed_config(const envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
2667
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_RetryPolicy_RetryHostPredicate_typed_config(const envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
2668
+
2669
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RetryHostPredicate_set_name(envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg, upb_strview value) {
2670
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
2671
+ }
2672
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RetryHostPredicate_set_typed_config(envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg, struct google_protobuf_Any* value) {
2673
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
2674
+ }
2675
+ UPB_INLINE struct google_protobuf_Any* envoy_config_route_v3_RetryPolicy_RetryHostPredicate_mutable_typed_config(envoy_config_route_v3_RetryPolicy_RetryHostPredicate *msg, upb_arena *arena) {
2676
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_route_v3_RetryPolicy_RetryHostPredicate_typed_config(msg);
2677
+ if (sub == NULL) {
2678
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
2679
+ if (!sub) return NULL;
2680
+ envoy_config_route_v3_RetryPolicy_RetryHostPredicate_set_typed_config(msg, sub);
2681
+ }
2682
+ return sub;
2683
+ }
2684
+
2685
+ /* envoy.config.route.v3.RetryPolicy.RetryBackOff */
2686
+
2687
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryBackOff *envoy_config_route_v3_RetryPolicy_RetryBackOff_new(upb_arena *arena) {
2688
+ return (envoy_config_route_v3_RetryPolicy_RetryBackOff *)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RetryBackOff_msginit, arena);
2689
+ }
2690
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryBackOff *envoy_config_route_v3_RetryPolicy_RetryBackOff_parse(const char *buf, size_t size,
2691
+ upb_arena *arena) {
2692
+ envoy_config_route_v3_RetryPolicy_RetryBackOff *ret = envoy_config_route_v3_RetryPolicy_RetryBackOff_new(arena);
2693
+ if (!ret) return NULL;
2694
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RetryBackOff_msginit, arena)) return NULL;
2695
+ return ret;
2696
+ }
2697
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RetryBackOff *envoy_config_route_v3_RetryPolicy_RetryBackOff_parse_ex(const char *buf, size_t size,
2698
+ const upb_extreg *extreg, int options,
2699
+ upb_arena *arena) {
2700
+ envoy_config_route_v3_RetryPolicy_RetryBackOff *ret = envoy_config_route_v3_RetryPolicy_RetryBackOff_new(arena);
2701
+ if (!ret) return NULL;
2702
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RetryBackOff_msginit, extreg, options, arena)) {
2703
+ return NULL;
2704
+ }
2705
+ return ret;
2706
+ }
2707
+ UPB_INLINE char *envoy_config_route_v3_RetryPolicy_RetryBackOff_serialize(const envoy_config_route_v3_RetryPolicy_RetryBackOff *msg, upb_arena *arena, size_t *len) {
2708
+ return upb_encode(msg, &envoy_config_route_v3_RetryPolicy_RetryBackOff_msginit, arena, len);
2709
+ }
2710
+
2711
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_RetryBackOff_has_base_interval(const envoy_config_route_v3_RetryPolicy_RetryBackOff *msg) { return _upb_hasbit(msg, 1); }
2712
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_RetryBackOff_base_interval(const envoy_config_route_v3_RetryPolicy_RetryBackOff *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*); }
2713
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_RetryBackOff_has_max_interval(const envoy_config_route_v3_RetryPolicy_RetryBackOff *msg) { return _upb_hasbit(msg, 2); }
2714
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_RetryBackOff_max_interval(const envoy_config_route_v3_RetryPolicy_RetryBackOff *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_Duration*); }
2715
+
2716
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RetryBackOff_set_base_interval(envoy_config_route_v3_RetryPolicy_RetryBackOff *msg, struct google_protobuf_Duration* value) {
2717
+ _upb_sethas(msg, 1);
2718
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
2719
+ }
2720
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_RetryBackOff_mutable_base_interval(envoy_config_route_v3_RetryPolicy_RetryBackOff *msg, upb_arena *arena) {
2721
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RetryPolicy_RetryBackOff_base_interval(msg);
2722
+ if (sub == NULL) {
2723
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2724
+ if (!sub) return NULL;
2725
+ envoy_config_route_v3_RetryPolicy_RetryBackOff_set_base_interval(msg, sub);
2726
+ }
2727
+ return sub;
2728
+ }
2729
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RetryBackOff_set_max_interval(envoy_config_route_v3_RetryPolicy_RetryBackOff *msg, struct google_protobuf_Duration* value) {
2730
+ _upb_sethas(msg, 2);
2731
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_Duration*) = value;
2732
+ }
2733
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_RetryBackOff_mutable_max_interval(envoy_config_route_v3_RetryPolicy_RetryBackOff *msg, upb_arena *arena) {
2734
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RetryPolicy_RetryBackOff_max_interval(msg);
2735
+ if (sub == NULL) {
2736
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2737
+ if (!sub) return NULL;
2738
+ envoy_config_route_v3_RetryPolicy_RetryBackOff_set_max_interval(msg, sub);
2739
+ }
2740
+ return sub;
2741
+ }
2742
+
2743
+ /* envoy.config.route.v3.RetryPolicy.ResetHeader */
2744
+
2745
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_ResetHeader *envoy_config_route_v3_RetryPolicy_ResetHeader_new(upb_arena *arena) {
2746
+ return (envoy_config_route_v3_RetryPolicy_ResetHeader *)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_ResetHeader_msginit, arena);
2747
+ }
2748
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_ResetHeader *envoy_config_route_v3_RetryPolicy_ResetHeader_parse(const char *buf, size_t size,
2749
+ upb_arena *arena) {
2750
+ envoy_config_route_v3_RetryPolicy_ResetHeader *ret = envoy_config_route_v3_RetryPolicy_ResetHeader_new(arena);
2751
+ if (!ret) return NULL;
2752
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_ResetHeader_msginit, arena)) return NULL;
2753
+ return ret;
2754
+ }
2755
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_ResetHeader *envoy_config_route_v3_RetryPolicy_ResetHeader_parse_ex(const char *buf, size_t size,
2756
+ const upb_extreg *extreg, int options,
2757
+ upb_arena *arena) {
2758
+ envoy_config_route_v3_RetryPolicy_ResetHeader *ret = envoy_config_route_v3_RetryPolicy_ResetHeader_new(arena);
2759
+ if (!ret) return NULL;
2760
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_ResetHeader_msginit, extreg, options, arena)) {
2761
+ return NULL;
2762
+ }
2763
+ return ret;
2764
+ }
2765
+ UPB_INLINE char *envoy_config_route_v3_RetryPolicy_ResetHeader_serialize(const envoy_config_route_v3_RetryPolicy_ResetHeader *msg, upb_arena *arena, size_t *len) {
2766
+ return upb_encode(msg, &envoy_config_route_v3_RetryPolicy_ResetHeader_msginit, arena, len);
2767
+ }
2768
+
2769
+ UPB_INLINE upb_strview envoy_config_route_v3_RetryPolicy_ResetHeader_name(const envoy_config_route_v3_RetryPolicy_ResetHeader *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
2770
+ UPB_INLINE int32_t envoy_config_route_v3_RetryPolicy_ResetHeader_format(const envoy_config_route_v3_RetryPolicy_ResetHeader *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
2771
+
2772
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_ResetHeader_set_name(envoy_config_route_v3_RetryPolicy_ResetHeader *msg, upb_strview value) {
2773
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
2774
+ }
2775
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_ResetHeader_set_format(envoy_config_route_v3_RetryPolicy_ResetHeader *msg, int32_t value) {
2776
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
2777
+ }
2778
+
2779
+ /* envoy.config.route.v3.RetryPolicy.RateLimitedRetryBackOff */
2780
+
2781
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_new(upb_arena *arena) {
2782
+ return (envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_msginit, arena);
2783
+ }
2784
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_parse(const char *buf, size_t size,
2785
+ upb_arena *arena) {
2786
+ envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *ret = envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_new(arena);
2787
+ if (!ret) return NULL;
2788
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_msginit, arena)) return NULL;
2789
+ return ret;
2790
+ }
2791
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_parse_ex(const char *buf, size_t size,
2792
+ const upb_extreg *extreg, int options,
2793
+ upb_arena *arena) {
2794
+ envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *ret = envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_new(arena);
2795
+ if (!ret) return NULL;
2796
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_msginit, extreg, options, arena)) {
2797
+ return NULL;
2798
+ }
2799
+ return ret;
2800
+ }
2801
+ UPB_INLINE char *envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_serialize(const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, upb_arena *arena, size_t *len) {
2802
+ return upb_encode(msg, &envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_msginit, arena, len);
2803
+ }
2804
+
2805
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_has_reset_headers(const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
2806
+ UPB_INLINE const envoy_config_route_v3_RetryPolicy_ResetHeader* const* envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_reset_headers(const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, size_t *len) { return (const envoy_config_route_v3_RetryPolicy_ResetHeader* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
2807
+ UPB_INLINE bool envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_has_max_interval(const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg) { return _upb_hasbit(msg, 1); }
2808
+ UPB_INLINE const struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_max_interval(const envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*); }
2809
+
2810
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_ResetHeader** envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_mutable_reset_headers(envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, size_t *len) {
2811
+ return (envoy_config_route_v3_RetryPolicy_ResetHeader**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
2812
+ }
2813
+ UPB_INLINE envoy_config_route_v3_RetryPolicy_ResetHeader** envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_resize_reset_headers(envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, size_t len, upb_arena *arena) {
2814
+ return (envoy_config_route_v3_RetryPolicy_ResetHeader**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
2815
+ }
2816
+ UPB_INLINE struct envoy_config_route_v3_RetryPolicy_ResetHeader* envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_add_reset_headers(envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, upb_arena *arena) {
2817
+ struct envoy_config_route_v3_RetryPolicy_ResetHeader* sub = (struct envoy_config_route_v3_RetryPolicy_ResetHeader*)_upb_msg_new(&envoy_config_route_v3_RetryPolicy_ResetHeader_msginit, arena);
2818
+ bool ok = _upb_array_append_accessor2(
2819
+ msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
2820
+ if (!ok) return NULL;
2821
+ return sub;
2822
+ }
2823
+ UPB_INLINE void envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_set_max_interval(envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, struct google_protobuf_Duration* value) {
2824
+ _upb_sethas(msg, 1);
2825
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
2826
+ }
2827
+ UPB_INLINE struct google_protobuf_Duration* envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_mutable_max_interval(envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff *msg, upb_arena *arena) {
2828
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_max_interval(msg);
2829
+ if (sub == NULL) {
2830
+ sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
2831
+ if (!sub) return NULL;
2832
+ envoy_config_route_v3_RetryPolicy_RateLimitedRetryBackOff_set_max_interval(msg, sub);
2833
+ }
2834
+ return sub;
2835
+ }
2836
+
2837
+ /* envoy.config.route.v3.HedgePolicy */
2838
+
2839
+ UPB_INLINE envoy_config_route_v3_HedgePolicy *envoy_config_route_v3_HedgePolicy_new(upb_arena *arena) {
2840
+ return (envoy_config_route_v3_HedgePolicy *)_upb_msg_new(&envoy_config_route_v3_HedgePolicy_msginit, arena);
2841
+ }
2842
+ UPB_INLINE envoy_config_route_v3_HedgePolicy *envoy_config_route_v3_HedgePolicy_parse(const char *buf, size_t size,
2843
+ upb_arena *arena) {
2844
+ envoy_config_route_v3_HedgePolicy *ret = envoy_config_route_v3_HedgePolicy_new(arena);
2845
+ if (!ret) return NULL;
2846
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_HedgePolicy_msginit, arena)) return NULL;
2847
+ return ret;
2848
+ }
2849
+ UPB_INLINE envoy_config_route_v3_HedgePolicy *envoy_config_route_v3_HedgePolicy_parse_ex(const char *buf, size_t size,
2850
+ const upb_extreg *extreg, int options,
2851
+ upb_arena *arena) {
2852
+ envoy_config_route_v3_HedgePolicy *ret = envoy_config_route_v3_HedgePolicy_new(arena);
2853
+ if (!ret) return NULL;
2854
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_HedgePolicy_msginit, extreg, options, arena)) {
2855
+ return NULL;
2856
+ }
2857
+ return ret;
2858
+ }
2859
+ UPB_INLINE char *envoy_config_route_v3_HedgePolicy_serialize(const envoy_config_route_v3_HedgePolicy *msg, upb_arena *arena, size_t *len) {
2860
+ return upb_encode(msg, &envoy_config_route_v3_HedgePolicy_msginit, arena, len);
2861
+ }
2862
+
2863
+ UPB_INLINE bool envoy_config_route_v3_HedgePolicy_has_initial_requests(const envoy_config_route_v3_HedgePolicy *msg) { return _upb_hasbit(msg, 1); }
2864
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_HedgePolicy_initial_requests(const envoy_config_route_v3_HedgePolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt32Value*); }
2865
+ UPB_INLINE bool envoy_config_route_v3_HedgePolicy_has_additional_request_chance(const envoy_config_route_v3_HedgePolicy *msg) { return _upb_hasbit(msg, 2); }
2866
+ UPB_INLINE const struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_HedgePolicy_additional_request_chance(const envoy_config_route_v3_HedgePolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct envoy_type_v3_FractionalPercent*); }
2867
+ UPB_INLINE bool envoy_config_route_v3_HedgePolicy_hedge_on_per_try_timeout(const envoy_config_route_v3_HedgePolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
2868
+
2869
+ UPB_INLINE void envoy_config_route_v3_HedgePolicy_set_initial_requests(envoy_config_route_v3_HedgePolicy *msg, struct google_protobuf_UInt32Value* value) {
2870
+ _upb_sethas(msg, 1);
2871
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt32Value*) = value;
2872
+ }
2873
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_HedgePolicy_mutable_initial_requests(envoy_config_route_v3_HedgePolicy *msg, upb_arena *arena) {
2874
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_HedgePolicy_initial_requests(msg);
2875
+ if (sub == NULL) {
2876
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
2877
+ if (!sub) return NULL;
2878
+ envoy_config_route_v3_HedgePolicy_set_initial_requests(msg, sub);
2879
+ }
2880
+ return sub;
2881
+ }
2882
+ UPB_INLINE void envoy_config_route_v3_HedgePolicy_set_additional_request_chance(envoy_config_route_v3_HedgePolicy *msg, struct envoy_type_v3_FractionalPercent* value) {
2883
+ _upb_sethas(msg, 2);
2884
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct envoy_type_v3_FractionalPercent*) = value;
2885
+ }
2886
+ UPB_INLINE struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_HedgePolicy_mutable_additional_request_chance(envoy_config_route_v3_HedgePolicy *msg, upb_arena *arena) {
2887
+ struct envoy_type_v3_FractionalPercent* sub = (struct envoy_type_v3_FractionalPercent*)envoy_config_route_v3_HedgePolicy_additional_request_chance(msg);
2888
+ if (sub == NULL) {
2889
+ sub = (struct envoy_type_v3_FractionalPercent*)_upb_msg_new(&envoy_type_v3_FractionalPercent_msginit, arena);
2890
+ if (!sub) return NULL;
2891
+ envoy_config_route_v3_HedgePolicy_set_additional_request_chance(msg, sub);
2892
+ }
2893
+ return sub;
2894
+ }
2895
+ UPB_INLINE void envoy_config_route_v3_HedgePolicy_set_hedge_on_per_try_timeout(envoy_config_route_v3_HedgePolicy *msg, bool value) {
2896
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
2897
+ }
2898
+
2899
+ /* envoy.config.route.v3.RedirectAction */
2900
+
2901
+ UPB_INLINE envoy_config_route_v3_RedirectAction *envoy_config_route_v3_RedirectAction_new(upb_arena *arena) {
2902
+ return (envoy_config_route_v3_RedirectAction *)_upb_msg_new(&envoy_config_route_v3_RedirectAction_msginit, arena);
2903
+ }
2904
+ UPB_INLINE envoy_config_route_v3_RedirectAction *envoy_config_route_v3_RedirectAction_parse(const char *buf, size_t size,
2905
+ upb_arena *arena) {
2906
+ envoy_config_route_v3_RedirectAction *ret = envoy_config_route_v3_RedirectAction_new(arena);
2907
+ if (!ret) return NULL;
2908
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RedirectAction_msginit, arena)) return NULL;
2909
+ return ret;
2910
+ }
2911
+ UPB_INLINE envoy_config_route_v3_RedirectAction *envoy_config_route_v3_RedirectAction_parse_ex(const char *buf, size_t size,
2912
+ const upb_extreg *extreg, int options,
2913
+ upb_arena *arena) {
2914
+ envoy_config_route_v3_RedirectAction *ret = envoy_config_route_v3_RedirectAction_new(arena);
2915
+ if (!ret) return NULL;
2916
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RedirectAction_msginit, extreg, options, arena)) {
2917
+ return NULL;
2918
+ }
2919
+ return ret;
2920
+ }
2921
+ UPB_INLINE char *envoy_config_route_v3_RedirectAction_serialize(const envoy_config_route_v3_RedirectAction *msg, upb_arena *arena, size_t *len) {
2922
+ return upb_encode(msg, &envoy_config_route_v3_RedirectAction_msginit, arena, len);
2923
+ }
2924
+
2925
+ typedef enum {
2926
+ envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_https_redirect = 4,
2927
+ envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_scheme_redirect = 7,
2928
+ envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_NOT_SET = 0
2929
+ } envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_oneofcases;
2930
+ UPB_INLINE envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_oneofcases envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_case(const envoy_config_route_v3_RedirectAction* msg) { return (envoy_config_route_v3_RedirectAction_scheme_rewrite_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(40, 72), int32_t); }
2931
+
2932
+ typedef enum {
2933
+ envoy_config_route_v3_RedirectAction_path_rewrite_specifier_path_redirect = 2,
2934
+ envoy_config_route_v3_RedirectAction_path_rewrite_specifier_prefix_rewrite = 5,
2935
+ envoy_config_route_v3_RedirectAction_path_rewrite_specifier_regex_rewrite = 9,
2936
+ envoy_config_route_v3_RedirectAction_path_rewrite_specifier_NOT_SET = 0
2937
+ } envoy_config_route_v3_RedirectAction_path_rewrite_specifier_oneofcases;
2938
+ UPB_INLINE envoy_config_route_v3_RedirectAction_path_rewrite_specifier_oneofcases envoy_config_route_v3_RedirectAction_path_rewrite_specifier_case(const envoy_config_route_v3_RedirectAction* msg) { return (envoy_config_route_v3_RedirectAction_path_rewrite_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(28, 48), int32_t); }
2939
+
2940
+ UPB_INLINE upb_strview envoy_config_route_v3_RedirectAction_host_redirect(const envoy_config_route_v3_RedirectAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_strview); }
2941
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_has_path_redirect(const envoy_config_route_v3_RedirectAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(28, 48)) == 2; }
2942
+ UPB_INLINE upb_strview envoy_config_route_v3_RedirectAction_path_redirect(const envoy_config_route_v3_RedirectAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(20, 32), UPB_SIZE(28, 48), 2, upb_strview_make("", strlen(""))); }
2943
+ UPB_INLINE int32_t envoy_config_route_v3_RedirectAction_response_code(const envoy_config_route_v3_RedirectAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
2944
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_has_https_redirect(const envoy_config_route_v3_RedirectAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(40, 72)) == 4; }
2945
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_https_redirect(const envoy_config_route_v3_RedirectAction *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(32, 56), UPB_SIZE(40, 72), 4, false); }
2946
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_has_prefix_rewrite(const envoy_config_route_v3_RedirectAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(28, 48)) == 5; }
2947
+ UPB_INLINE upb_strview envoy_config_route_v3_RedirectAction_prefix_rewrite(const envoy_config_route_v3_RedirectAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(20, 32), UPB_SIZE(28, 48), 5, upb_strview_make("", strlen(""))); }
2948
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_strip_query(const envoy_config_route_v3_RedirectAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool); }
2949
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_has_scheme_redirect(const envoy_config_route_v3_RedirectAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(40, 72)) == 7; }
2950
+ UPB_INLINE upb_strview envoy_config_route_v3_RedirectAction_scheme_redirect(const envoy_config_route_v3_RedirectAction *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(32, 56), UPB_SIZE(40, 72), 7, upb_strview_make("", strlen(""))); }
2951
+ UPB_INLINE uint32_t envoy_config_route_v3_RedirectAction_port_redirect(const envoy_config_route_v3_RedirectAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t); }
2952
+ UPB_INLINE bool envoy_config_route_v3_RedirectAction_has_regex_rewrite(const envoy_config_route_v3_RedirectAction *msg) { return _upb_getoneofcase(msg, UPB_SIZE(28, 48)) == 9; }
2953
+ UPB_INLINE const struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RedirectAction_regex_rewrite(const envoy_config_route_v3_RedirectAction *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_RegexMatchAndSubstitute*, UPB_SIZE(20, 32), UPB_SIZE(28, 48), 9, NULL); }
2954
+
2955
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_host_redirect(envoy_config_route_v3_RedirectAction *msg, upb_strview value) {
2956
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_strview) = value;
2957
+ }
2958
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_path_redirect(envoy_config_route_v3_RedirectAction *msg, upb_strview value) {
2959
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(20, 32), value, UPB_SIZE(28, 48), 2);
2960
+ }
2961
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_response_code(envoy_config_route_v3_RedirectAction *msg, int32_t value) {
2962
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
2963
+ }
2964
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_https_redirect(envoy_config_route_v3_RedirectAction *msg, bool value) {
2965
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(32, 56), value, UPB_SIZE(40, 72), 4);
2966
+ }
2967
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_prefix_rewrite(envoy_config_route_v3_RedirectAction *msg, upb_strview value) {
2968
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(20, 32), value, UPB_SIZE(28, 48), 5);
2969
+ }
2970
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_strip_query(envoy_config_route_v3_RedirectAction *msg, bool value) {
2971
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool) = value;
2972
+ }
2973
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_scheme_redirect(envoy_config_route_v3_RedirectAction *msg, upb_strview value) {
2974
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(32, 56), value, UPB_SIZE(40, 72), 7);
2975
+ }
2976
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_port_redirect(envoy_config_route_v3_RedirectAction *msg, uint32_t value) {
2977
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t) = value;
2978
+ }
2979
+ UPB_INLINE void envoy_config_route_v3_RedirectAction_set_regex_rewrite(envoy_config_route_v3_RedirectAction *msg, struct envoy_type_matcher_v3_RegexMatchAndSubstitute* value) {
2980
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_RegexMatchAndSubstitute*, UPB_SIZE(20, 32), value, UPB_SIZE(28, 48), 9);
2981
+ }
2982
+ UPB_INLINE struct envoy_type_matcher_v3_RegexMatchAndSubstitute* envoy_config_route_v3_RedirectAction_mutable_regex_rewrite(envoy_config_route_v3_RedirectAction *msg, upb_arena *arena) {
2983
+ struct envoy_type_matcher_v3_RegexMatchAndSubstitute* sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)envoy_config_route_v3_RedirectAction_regex_rewrite(msg);
2984
+ if (sub == NULL) {
2985
+ sub = (struct envoy_type_matcher_v3_RegexMatchAndSubstitute*)_upb_msg_new(&envoy_type_matcher_v3_RegexMatchAndSubstitute_msginit, arena);
2986
+ if (!sub) return NULL;
2987
+ envoy_config_route_v3_RedirectAction_set_regex_rewrite(msg, sub);
2988
+ }
2989
+ return sub;
2990
+ }
2991
+
2992
+ /* envoy.config.route.v3.DirectResponseAction */
2993
+
2994
+ UPB_INLINE envoy_config_route_v3_DirectResponseAction *envoy_config_route_v3_DirectResponseAction_new(upb_arena *arena) {
2995
+ return (envoy_config_route_v3_DirectResponseAction *)_upb_msg_new(&envoy_config_route_v3_DirectResponseAction_msginit, arena);
2996
+ }
2997
+ UPB_INLINE envoy_config_route_v3_DirectResponseAction *envoy_config_route_v3_DirectResponseAction_parse(const char *buf, size_t size,
2998
+ upb_arena *arena) {
2999
+ envoy_config_route_v3_DirectResponseAction *ret = envoy_config_route_v3_DirectResponseAction_new(arena);
3000
+ if (!ret) return NULL;
3001
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_DirectResponseAction_msginit, arena)) return NULL;
3002
+ return ret;
3003
+ }
3004
+ UPB_INLINE envoy_config_route_v3_DirectResponseAction *envoy_config_route_v3_DirectResponseAction_parse_ex(const char *buf, size_t size,
3005
+ const upb_extreg *extreg, int options,
3006
+ upb_arena *arena) {
3007
+ envoy_config_route_v3_DirectResponseAction *ret = envoy_config_route_v3_DirectResponseAction_new(arena);
3008
+ if (!ret) return NULL;
3009
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_DirectResponseAction_msginit, extreg, options, arena)) {
3010
+ return NULL;
3011
+ }
3012
+ return ret;
3013
+ }
3014
+ UPB_INLINE char *envoy_config_route_v3_DirectResponseAction_serialize(const envoy_config_route_v3_DirectResponseAction *msg, upb_arena *arena, size_t *len) {
3015
+ return upb_encode(msg, &envoy_config_route_v3_DirectResponseAction_msginit, arena, len);
3016
+ }
3017
+
3018
+ UPB_INLINE uint32_t envoy_config_route_v3_DirectResponseAction_status(const envoy_config_route_v3_DirectResponseAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t); }
3019
+ UPB_INLINE bool envoy_config_route_v3_DirectResponseAction_has_body(const envoy_config_route_v3_DirectResponseAction *msg) { return _upb_hasbit(msg, 1); }
3020
+ UPB_INLINE const struct envoy_config_core_v3_DataSource* envoy_config_route_v3_DirectResponseAction_body(const envoy_config_route_v3_DirectResponseAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const struct envoy_config_core_v3_DataSource*); }
3021
+
3022
+ UPB_INLINE void envoy_config_route_v3_DirectResponseAction_set_status(envoy_config_route_v3_DirectResponseAction *msg, uint32_t value) {
3023
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t) = value;
3024
+ }
3025
+ UPB_INLINE void envoy_config_route_v3_DirectResponseAction_set_body(envoy_config_route_v3_DirectResponseAction *msg, struct envoy_config_core_v3_DataSource* value) {
3026
+ _upb_sethas(msg, 1);
3027
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), struct envoy_config_core_v3_DataSource*) = value;
3028
+ }
3029
+ UPB_INLINE struct envoy_config_core_v3_DataSource* envoy_config_route_v3_DirectResponseAction_mutable_body(envoy_config_route_v3_DirectResponseAction *msg, upb_arena *arena) {
3030
+ struct envoy_config_core_v3_DataSource* sub = (struct envoy_config_core_v3_DataSource*)envoy_config_route_v3_DirectResponseAction_body(msg);
3031
+ if (sub == NULL) {
3032
+ sub = (struct envoy_config_core_v3_DataSource*)_upb_msg_new(&envoy_config_core_v3_DataSource_msginit, arena);
3033
+ if (!sub) return NULL;
3034
+ envoy_config_route_v3_DirectResponseAction_set_body(msg, sub);
3035
+ }
3036
+ return sub;
3037
+ }
3038
+
3039
+ /* envoy.config.route.v3.NonForwardingAction */
3040
+
3041
+ UPB_INLINE envoy_config_route_v3_NonForwardingAction *envoy_config_route_v3_NonForwardingAction_new(upb_arena *arena) {
3042
+ return (envoy_config_route_v3_NonForwardingAction *)_upb_msg_new(&envoy_config_route_v3_NonForwardingAction_msginit, arena);
3043
+ }
3044
+ UPB_INLINE envoy_config_route_v3_NonForwardingAction *envoy_config_route_v3_NonForwardingAction_parse(const char *buf, size_t size,
3045
+ upb_arena *arena) {
3046
+ envoy_config_route_v3_NonForwardingAction *ret = envoy_config_route_v3_NonForwardingAction_new(arena);
3047
+ if (!ret) return NULL;
3048
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_NonForwardingAction_msginit, arena)) return NULL;
3049
+ return ret;
3050
+ }
3051
+ UPB_INLINE envoy_config_route_v3_NonForwardingAction *envoy_config_route_v3_NonForwardingAction_parse_ex(const char *buf, size_t size,
3052
+ const upb_extreg *extreg, int options,
3053
+ upb_arena *arena) {
3054
+ envoy_config_route_v3_NonForwardingAction *ret = envoy_config_route_v3_NonForwardingAction_new(arena);
3055
+ if (!ret) return NULL;
3056
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_NonForwardingAction_msginit, extreg, options, arena)) {
3057
+ return NULL;
3058
+ }
3059
+ return ret;
3060
+ }
3061
+ UPB_INLINE char *envoy_config_route_v3_NonForwardingAction_serialize(const envoy_config_route_v3_NonForwardingAction *msg, upb_arena *arena, size_t *len) {
3062
+ return upb_encode(msg, &envoy_config_route_v3_NonForwardingAction_msginit, arena, len);
3063
+ }
3064
+
3065
+
3066
+
3067
+ /* envoy.config.route.v3.Decorator */
3068
+
3069
+ UPB_INLINE envoy_config_route_v3_Decorator *envoy_config_route_v3_Decorator_new(upb_arena *arena) {
3070
+ return (envoy_config_route_v3_Decorator *)_upb_msg_new(&envoy_config_route_v3_Decorator_msginit, arena);
3071
+ }
3072
+ UPB_INLINE envoy_config_route_v3_Decorator *envoy_config_route_v3_Decorator_parse(const char *buf, size_t size,
3073
+ upb_arena *arena) {
3074
+ envoy_config_route_v3_Decorator *ret = envoy_config_route_v3_Decorator_new(arena);
3075
+ if (!ret) return NULL;
3076
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_Decorator_msginit, arena)) return NULL;
3077
+ return ret;
3078
+ }
3079
+ UPB_INLINE envoy_config_route_v3_Decorator *envoy_config_route_v3_Decorator_parse_ex(const char *buf, size_t size,
3080
+ const upb_extreg *extreg, int options,
3081
+ upb_arena *arena) {
3082
+ envoy_config_route_v3_Decorator *ret = envoy_config_route_v3_Decorator_new(arena);
3083
+ if (!ret) return NULL;
3084
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_Decorator_msginit, extreg, options, arena)) {
3085
+ return NULL;
3086
+ }
3087
+ return ret;
3088
+ }
3089
+ UPB_INLINE char *envoy_config_route_v3_Decorator_serialize(const envoy_config_route_v3_Decorator *msg, upb_arena *arena, size_t *len) {
3090
+ return upb_encode(msg, &envoy_config_route_v3_Decorator_msginit, arena, len);
3091
+ }
3092
+
3093
+ UPB_INLINE upb_strview envoy_config_route_v3_Decorator_operation(const envoy_config_route_v3_Decorator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
3094
+ UPB_INLINE bool envoy_config_route_v3_Decorator_has_propagate(const envoy_config_route_v3_Decorator *msg) { return _upb_hasbit(msg, 1); }
3095
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_Decorator_propagate(const envoy_config_route_v3_Decorator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_BoolValue*); }
3096
+
3097
+ UPB_INLINE void envoy_config_route_v3_Decorator_set_operation(envoy_config_route_v3_Decorator *msg, upb_strview value) {
3098
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
3099
+ }
3100
+ UPB_INLINE void envoy_config_route_v3_Decorator_set_propagate(envoy_config_route_v3_Decorator *msg, struct google_protobuf_BoolValue* value) {
3101
+ _upb_sethas(msg, 1);
3102
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_BoolValue*) = value;
3103
+ }
3104
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_Decorator_mutable_propagate(envoy_config_route_v3_Decorator *msg, upb_arena *arena) {
3105
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_Decorator_propagate(msg);
3106
+ if (sub == NULL) {
3107
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
3108
+ if (!sub) return NULL;
3109
+ envoy_config_route_v3_Decorator_set_propagate(msg, sub);
3110
+ }
3111
+ return sub;
3112
+ }
3113
+
3114
+ /* envoy.config.route.v3.Tracing */
3115
+
3116
+ UPB_INLINE envoy_config_route_v3_Tracing *envoy_config_route_v3_Tracing_new(upb_arena *arena) {
3117
+ return (envoy_config_route_v3_Tracing *)_upb_msg_new(&envoy_config_route_v3_Tracing_msginit, arena);
3118
+ }
3119
+ UPB_INLINE envoy_config_route_v3_Tracing *envoy_config_route_v3_Tracing_parse(const char *buf, size_t size,
3120
+ upb_arena *arena) {
3121
+ envoy_config_route_v3_Tracing *ret = envoy_config_route_v3_Tracing_new(arena);
3122
+ if (!ret) return NULL;
3123
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_Tracing_msginit, arena)) return NULL;
3124
+ return ret;
3125
+ }
3126
+ UPB_INLINE envoy_config_route_v3_Tracing *envoy_config_route_v3_Tracing_parse_ex(const char *buf, size_t size,
3127
+ const upb_extreg *extreg, int options,
3128
+ upb_arena *arena) {
3129
+ envoy_config_route_v3_Tracing *ret = envoy_config_route_v3_Tracing_new(arena);
3130
+ if (!ret) return NULL;
3131
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_Tracing_msginit, extreg, options, arena)) {
3132
+ return NULL;
3133
+ }
3134
+ return ret;
3135
+ }
3136
+ UPB_INLINE char *envoy_config_route_v3_Tracing_serialize(const envoy_config_route_v3_Tracing *msg, upb_arena *arena, size_t *len) {
3137
+ return upb_encode(msg, &envoy_config_route_v3_Tracing_msginit, arena, len);
3138
+ }
3139
+
3140
+ UPB_INLINE bool envoy_config_route_v3_Tracing_has_client_sampling(const envoy_config_route_v3_Tracing *msg) { return _upb_hasbit(msg, 1); }
3141
+ UPB_INLINE const struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_Tracing_client_sampling(const envoy_config_route_v3_Tracing *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_v3_FractionalPercent*); }
3142
+ UPB_INLINE bool envoy_config_route_v3_Tracing_has_random_sampling(const envoy_config_route_v3_Tracing *msg) { return _upb_hasbit(msg, 2); }
3143
+ UPB_INLINE const struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_Tracing_random_sampling(const envoy_config_route_v3_Tracing *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct envoy_type_v3_FractionalPercent*); }
3144
+ UPB_INLINE bool envoy_config_route_v3_Tracing_has_overall_sampling(const envoy_config_route_v3_Tracing *msg) { return _upb_hasbit(msg, 3); }
3145
+ UPB_INLINE const struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_Tracing_overall_sampling(const envoy_config_route_v3_Tracing *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_type_v3_FractionalPercent*); }
3146
+ UPB_INLINE bool envoy_config_route_v3_Tracing_has_custom_tags(const envoy_config_route_v3_Tracing *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
3147
+ UPB_INLINE const struct envoy_type_tracing_v3_CustomTag* const* envoy_config_route_v3_Tracing_custom_tags(const envoy_config_route_v3_Tracing *msg, size_t *len) { return (const struct envoy_type_tracing_v3_CustomTag* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
3148
+
3149
+ UPB_INLINE void envoy_config_route_v3_Tracing_set_client_sampling(envoy_config_route_v3_Tracing *msg, struct envoy_type_v3_FractionalPercent* value) {
3150
+ _upb_sethas(msg, 1);
3151
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_v3_FractionalPercent*) = value;
3152
+ }
3153
+ UPB_INLINE struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_Tracing_mutable_client_sampling(envoy_config_route_v3_Tracing *msg, upb_arena *arena) {
3154
+ struct envoy_type_v3_FractionalPercent* sub = (struct envoy_type_v3_FractionalPercent*)envoy_config_route_v3_Tracing_client_sampling(msg);
3155
+ if (sub == NULL) {
3156
+ sub = (struct envoy_type_v3_FractionalPercent*)_upb_msg_new(&envoy_type_v3_FractionalPercent_msginit, arena);
3157
+ if (!sub) return NULL;
3158
+ envoy_config_route_v3_Tracing_set_client_sampling(msg, sub);
3159
+ }
3160
+ return sub;
3161
+ }
3162
+ UPB_INLINE void envoy_config_route_v3_Tracing_set_random_sampling(envoy_config_route_v3_Tracing *msg, struct envoy_type_v3_FractionalPercent* value) {
3163
+ _upb_sethas(msg, 2);
3164
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct envoy_type_v3_FractionalPercent*) = value;
3165
+ }
3166
+ UPB_INLINE struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_Tracing_mutable_random_sampling(envoy_config_route_v3_Tracing *msg, upb_arena *arena) {
3167
+ struct envoy_type_v3_FractionalPercent* sub = (struct envoy_type_v3_FractionalPercent*)envoy_config_route_v3_Tracing_random_sampling(msg);
3168
+ if (sub == NULL) {
3169
+ sub = (struct envoy_type_v3_FractionalPercent*)_upb_msg_new(&envoy_type_v3_FractionalPercent_msginit, arena);
3170
+ if (!sub) return NULL;
3171
+ envoy_config_route_v3_Tracing_set_random_sampling(msg, sub);
3172
+ }
3173
+ return sub;
3174
+ }
3175
+ UPB_INLINE void envoy_config_route_v3_Tracing_set_overall_sampling(envoy_config_route_v3_Tracing *msg, struct envoy_type_v3_FractionalPercent* value) {
3176
+ _upb_sethas(msg, 3);
3177
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct envoy_type_v3_FractionalPercent*) = value;
3178
+ }
3179
+ UPB_INLINE struct envoy_type_v3_FractionalPercent* envoy_config_route_v3_Tracing_mutable_overall_sampling(envoy_config_route_v3_Tracing *msg, upb_arena *arena) {
3180
+ struct envoy_type_v3_FractionalPercent* sub = (struct envoy_type_v3_FractionalPercent*)envoy_config_route_v3_Tracing_overall_sampling(msg);
3181
+ if (sub == NULL) {
3182
+ sub = (struct envoy_type_v3_FractionalPercent*)_upb_msg_new(&envoy_type_v3_FractionalPercent_msginit, arena);
3183
+ if (!sub) return NULL;
3184
+ envoy_config_route_v3_Tracing_set_overall_sampling(msg, sub);
3185
+ }
3186
+ return sub;
3187
+ }
3188
+ UPB_INLINE struct envoy_type_tracing_v3_CustomTag** envoy_config_route_v3_Tracing_mutable_custom_tags(envoy_config_route_v3_Tracing *msg, size_t *len) {
3189
+ return (struct envoy_type_tracing_v3_CustomTag**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
3190
+ }
3191
+ UPB_INLINE struct envoy_type_tracing_v3_CustomTag** envoy_config_route_v3_Tracing_resize_custom_tags(envoy_config_route_v3_Tracing *msg, size_t len, upb_arena *arena) {
3192
+ return (struct envoy_type_tracing_v3_CustomTag**)_upb_array_resize_accessor2(msg, UPB_SIZE(16, 32), len, UPB_SIZE(2, 3), arena);
3193
+ }
3194
+ UPB_INLINE struct envoy_type_tracing_v3_CustomTag* envoy_config_route_v3_Tracing_add_custom_tags(envoy_config_route_v3_Tracing *msg, upb_arena *arena) {
3195
+ struct envoy_type_tracing_v3_CustomTag* sub = (struct envoy_type_tracing_v3_CustomTag*)_upb_msg_new(&envoy_type_tracing_v3_CustomTag_msginit, arena);
3196
+ bool ok = _upb_array_append_accessor2(
3197
+ msg, UPB_SIZE(16, 32), UPB_SIZE(2, 3), &sub, arena);
3198
+ if (!ok) return NULL;
3199
+ return sub;
3200
+ }
3201
+
3202
+ /* envoy.config.route.v3.VirtualCluster */
3203
+
3204
+ UPB_INLINE envoy_config_route_v3_VirtualCluster *envoy_config_route_v3_VirtualCluster_new(upb_arena *arena) {
3205
+ return (envoy_config_route_v3_VirtualCluster *)_upb_msg_new(&envoy_config_route_v3_VirtualCluster_msginit, arena);
3206
+ }
3207
+ UPB_INLINE envoy_config_route_v3_VirtualCluster *envoy_config_route_v3_VirtualCluster_parse(const char *buf, size_t size,
3208
+ upb_arena *arena) {
3209
+ envoy_config_route_v3_VirtualCluster *ret = envoy_config_route_v3_VirtualCluster_new(arena);
3210
+ if (!ret) return NULL;
3211
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_VirtualCluster_msginit, arena)) return NULL;
3212
+ return ret;
3213
+ }
3214
+ UPB_INLINE envoy_config_route_v3_VirtualCluster *envoy_config_route_v3_VirtualCluster_parse_ex(const char *buf, size_t size,
3215
+ const upb_extreg *extreg, int options,
3216
+ upb_arena *arena) {
3217
+ envoy_config_route_v3_VirtualCluster *ret = envoy_config_route_v3_VirtualCluster_new(arena);
3218
+ if (!ret) return NULL;
3219
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_VirtualCluster_msginit, extreg, options, arena)) {
3220
+ return NULL;
3221
+ }
3222
+ return ret;
3223
+ }
3224
+ UPB_INLINE char *envoy_config_route_v3_VirtualCluster_serialize(const envoy_config_route_v3_VirtualCluster *msg, upb_arena *arena, size_t *len) {
3225
+ return upb_encode(msg, &envoy_config_route_v3_VirtualCluster_msginit, arena, len);
3226
+ }
3227
+
3228
+ UPB_INLINE upb_strview envoy_config_route_v3_VirtualCluster_name(const envoy_config_route_v3_VirtualCluster *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
3229
+ UPB_INLINE bool envoy_config_route_v3_VirtualCluster_has_headers(const envoy_config_route_v3_VirtualCluster *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
3230
+ UPB_INLINE const envoy_config_route_v3_HeaderMatcher* const* envoy_config_route_v3_VirtualCluster_headers(const envoy_config_route_v3_VirtualCluster *msg, size_t *len) { return (const envoy_config_route_v3_HeaderMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
3231
+
3232
+ UPB_INLINE void envoy_config_route_v3_VirtualCluster_set_name(envoy_config_route_v3_VirtualCluster *msg, upb_strview value) {
3233
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
3234
+ }
3235
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_VirtualCluster_mutable_headers(envoy_config_route_v3_VirtualCluster *msg, size_t *len) {
3236
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
3237
+ }
3238
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_VirtualCluster_resize_headers(envoy_config_route_v3_VirtualCluster *msg, size_t len, upb_arena *arena) {
3239
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
3240
+ }
3241
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_route_v3_VirtualCluster_add_headers(envoy_config_route_v3_VirtualCluster *msg, upb_arena *arena) {
3242
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
3243
+ bool ok = _upb_array_append_accessor2(
3244
+ msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
3245
+ if (!ok) return NULL;
3246
+ return sub;
3247
+ }
3248
+
3249
+ /* envoy.config.route.v3.RateLimit */
3250
+
3251
+ UPB_INLINE envoy_config_route_v3_RateLimit *envoy_config_route_v3_RateLimit_new(upb_arena *arena) {
3252
+ return (envoy_config_route_v3_RateLimit *)_upb_msg_new(&envoy_config_route_v3_RateLimit_msginit, arena);
3253
+ }
3254
+ UPB_INLINE envoy_config_route_v3_RateLimit *envoy_config_route_v3_RateLimit_parse(const char *buf, size_t size,
3255
+ upb_arena *arena) {
3256
+ envoy_config_route_v3_RateLimit *ret = envoy_config_route_v3_RateLimit_new(arena);
3257
+ if (!ret) return NULL;
3258
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_msginit, arena)) return NULL;
3259
+ return ret;
3260
+ }
3261
+ UPB_INLINE envoy_config_route_v3_RateLimit *envoy_config_route_v3_RateLimit_parse_ex(const char *buf, size_t size,
3262
+ const upb_extreg *extreg, int options,
3263
+ upb_arena *arena) {
3264
+ envoy_config_route_v3_RateLimit *ret = envoy_config_route_v3_RateLimit_new(arena);
3265
+ if (!ret) return NULL;
3266
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_msginit, extreg, options, arena)) {
3267
+ return NULL;
3268
+ }
3269
+ return ret;
3270
+ }
3271
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_serialize(const envoy_config_route_v3_RateLimit *msg, upb_arena *arena, size_t *len) {
3272
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_msginit, arena, len);
3273
+ }
3274
+
3275
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_has_stage(const envoy_config_route_v3_RateLimit *msg) { return _upb_hasbit(msg, 1); }
3276
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_RateLimit_stage(const envoy_config_route_v3_RateLimit *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_UInt32Value*); }
3277
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_disable_key(const envoy_config_route_v3_RateLimit *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
3278
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_has_actions(const envoy_config_route_v3_RateLimit *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(20, 40)); }
3279
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action* const* envoy_config_route_v3_RateLimit_actions(const envoy_config_route_v3_RateLimit *msg, size_t *len) { return (const envoy_config_route_v3_RateLimit_Action* const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
3280
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_has_limit(const envoy_config_route_v3_RateLimit *msg) { return _upb_hasbit(msg, 2); }
3281
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Override* envoy_config_route_v3_RateLimit_limit(const envoy_config_route_v3_RateLimit *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const envoy_config_route_v3_RateLimit_Override*); }
3282
+
3283
+ UPB_INLINE void envoy_config_route_v3_RateLimit_set_stage(envoy_config_route_v3_RateLimit *msg, struct google_protobuf_UInt32Value* value) {
3284
+ _upb_sethas(msg, 1);
3285
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_UInt32Value*) = value;
3286
+ }
3287
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_RateLimit_mutable_stage(envoy_config_route_v3_RateLimit *msg, upb_arena *arena) {
3288
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_RateLimit_stage(msg);
3289
+ if (sub == NULL) {
3290
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
3291
+ if (!sub) return NULL;
3292
+ envoy_config_route_v3_RateLimit_set_stage(msg, sub);
3293
+ }
3294
+ return sub;
3295
+ }
3296
+ UPB_INLINE void envoy_config_route_v3_RateLimit_set_disable_key(envoy_config_route_v3_RateLimit *msg, upb_strview value) {
3297
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
3298
+ }
3299
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action** envoy_config_route_v3_RateLimit_mutable_actions(envoy_config_route_v3_RateLimit *msg, size_t *len) {
3300
+ return (envoy_config_route_v3_RateLimit_Action**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
3301
+ }
3302
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action** envoy_config_route_v3_RateLimit_resize_actions(envoy_config_route_v3_RateLimit *msg, size_t len, upb_arena *arena) {
3303
+ return (envoy_config_route_v3_RateLimit_Action**)_upb_array_resize_accessor2(msg, UPB_SIZE(20, 40), len, UPB_SIZE(2, 3), arena);
3304
+ }
3305
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action* envoy_config_route_v3_RateLimit_add_actions(envoy_config_route_v3_RateLimit *msg, upb_arena *arena) {
3306
+ struct envoy_config_route_v3_RateLimit_Action* sub = (struct envoy_config_route_v3_RateLimit_Action*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_msginit, arena);
3307
+ bool ok = _upb_array_append_accessor2(
3308
+ msg, UPB_SIZE(20, 40), UPB_SIZE(2, 3), &sub, arena);
3309
+ if (!ok) return NULL;
3310
+ return sub;
3311
+ }
3312
+ UPB_INLINE void envoy_config_route_v3_RateLimit_set_limit(envoy_config_route_v3_RateLimit *msg, envoy_config_route_v3_RateLimit_Override* value) {
3313
+ _upb_sethas(msg, 2);
3314
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 32), envoy_config_route_v3_RateLimit_Override*) = value;
3315
+ }
3316
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Override* envoy_config_route_v3_RateLimit_mutable_limit(envoy_config_route_v3_RateLimit *msg, upb_arena *arena) {
3317
+ struct envoy_config_route_v3_RateLimit_Override* sub = (struct envoy_config_route_v3_RateLimit_Override*)envoy_config_route_v3_RateLimit_limit(msg);
3318
+ if (sub == NULL) {
3319
+ sub = (struct envoy_config_route_v3_RateLimit_Override*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Override_msginit, arena);
3320
+ if (!sub) return NULL;
3321
+ envoy_config_route_v3_RateLimit_set_limit(msg, sub);
3322
+ }
3323
+ return sub;
3324
+ }
3325
+
3326
+ /* envoy.config.route.v3.RateLimit.Action */
3327
+
3328
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action *envoy_config_route_v3_RateLimit_Action_new(upb_arena *arena) {
3329
+ return (envoy_config_route_v3_RateLimit_Action *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_msginit, arena);
3330
+ }
3331
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action *envoy_config_route_v3_RateLimit_Action_parse(const char *buf, size_t size,
3332
+ upb_arena *arena) {
3333
+ envoy_config_route_v3_RateLimit_Action *ret = envoy_config_route_v3_RateLimit_Action_new(arena);
3334
+ if (!ret) return NULL;
3335
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_msginit, arena)) return NULL;
3336
+ return ret;
3337
+ }
3338
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action *envoy_config_route_v3_RateLimit_Action_parse_ex(const char *buf, size_t size,
3339
+ const upb_extreg *extreg, int options,
3340
+ upb_arena *arena) {
3341
+ envoy_config_route_v3_RateLimit_Action *ret = envoy_config_route_v3_RateLimit_Action_new(arena);
3342
+ if (!ret) return NULL;
3343
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_msginit, extreg, options, arena)) {
3344
+ return NULL;
3345
+ }
3346
+ return ret;
3347
+ }
3348
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_serialize(const envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena, size_t *len) {
3349
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_msginit, arena, len);
3350
+ }
3351
+
3352
+ typedef enum {
3353
+ envoy_config_route_v3_RateLimit_Action_action_specifier_source_cluster = 1,
3354
+ envoy_config_route_v3_RateLimit_Action_action_specifier_destination_cluster = 2,
3355
+ envoy_config_route_v3_RateLimit_Action_action_specifier_request_headers = 3,
3356
+ envoy_config_route_v3_RateLimit_Action_action_specifier_remote_address = 4,
3357
+ envoy_config_route_v3_RateLimit_Action_action_specifier_generic_key = 5,
3358
+ envoy_config_route_v3_RateLimit_Action_action_specifier_header_value_match = 6,
3359
+ envoy_config_route_v3_RateLimit_Action_action_specifier_dynamic_metadata = 7,
3360
+ envoy_config_route_v3_RateLimit_Action_action_specifier_metadata = 8,
3361
+ envoy_config_route_v3_RateLimit_Action_action_specifier_extension = 9,
3362
+ envoy_config_route_v3_RateLimit_Action_action_specifier_NOT_SET = 0
3363
+ } envoy_config_route_v3_RateLimit_Action_action_specifier_oneofcases;
3364
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_action_specifier_oneofcases envoy_config_route_v3_RateLimit_Action_action_specifier_case(const envoy_config_route_v3_RateLimit_Action* msg) { return (envoy_config_route_v3_RateLimit_Action_action_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
3365
+
3366
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_source_cluster(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
3367
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_SourceCluster* envoy_config_route_v3_RateLimit_Action_source_cluster(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_SourceCluster*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
3368
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_destination_cluster(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
3369
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_DestinationCluster* envoy_config_route_v3_RateLimit_Action_destination_cluster(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_DestinationCluster*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
3370
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_request_headers(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 3; }
3371
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_RequestHeaders* envoy_config_route_v3_RateLimit_Action_request_headers(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_RequestHeaders*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 3, NULL); }
3372
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_remote_address(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 4; }
3373
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_RemoteAddress* envoy_config_route_v3_RateLimit_Action_remote_address(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_RemoteAddress*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 4, NULL); }
3374
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_generic_key(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 5; }
3375
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_GenericKey* envoy_config_route_v3_RateLimit_Action_generic_key(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_GenericKey*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 5, NULL); }
3376
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_header_value_match(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 6; }
3377
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch* envoy_config_route_v3_RateLimit_Action_header_value_match(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 6, NULL); }
3378
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_dynamic_metadata(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 7; }
3379
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_DynamicMetaData* envoy_config_route_v3_RateLimit_Action_dynamic_metadata(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_DynamicMetaData*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 7, NULL); }
3380
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_metadata(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 8; }
3381
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Action_MetaData* envoy_config_route_v3_RateLimit_Action_metadata(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Action_MetaData*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 8, NULL); }
3382
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_has_extension(const envoy_config_route_v3_RateLimit_Action *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 9; }
3383
+ UPB_INLINE const struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_route_v3_RateLimit_Action_extension(const envoy_config_route_v3_RateLimit_Action *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_TypedExtensionConfig*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 9, NULL); }
3384
+
3385
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_source_cluster(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_SourceCluster* value) {
3386
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_SourceCluster*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
3387
+ }
3388
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_SourceCluster* envoy_config_route_v3_RateLimit_Action_mutable_source_cluster(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3389
+ struct envoy_config_route_v3_RateLimit_Action_SourceCluster* sub = (struct envoy_config_route_v3_RateLimit_Action_SourceCluster*)envoy_config_route_v3_RateLimit_Action_source_cluster(msg);
3390
+ if (sub == NULL) {
3391
+ sub = (struct envoy_config_route_v3_RateLimit_Action_SourceCluster*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_SourceCluster_msginit, arena);
3392
+ if (!sub) return NULL;
3393
+ envoy_config_route_v3_RateLimit_Action_set_source_cluster(msg, sub);
3394
+ }
3395
+ return sub;
3396
+ }
3397
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_destination_cluster(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_DestinationCluster* value) {
3398
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_DestinationCluster*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
3399
+ }
3400
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_DestinationCluster* envoy_config_route_v3_RateLimit_Action_mutable_destination_cluster(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3401
+ struct envoy_config_route_v3_RateLimit_Action_DestinationCluster* sub = (struct envoy_config_route_v3_RateLimit_Action_DestinationCluster*)envoy_config_route_v3_RateLimit_Action_destination_cluster(msg);
3402
+ if (sub == NULL) {
3403
+ sub = (struct envoy_config_route_v3_RateLimit_Action_DestinationCluster*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_DestinationCluster_msginit, arena);
3404
+ if (!sub) return NULL;
3405
+ envoy_config_route_v3_RateLimit_Action_set_destination_cluster(msg, sub);
3406
+ }
3407
+ return sub;
3408
+ }
3409
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_request_headers(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_RequestHeaders* value) {
3410
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_RequestHeaders*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 3);
3411
+ }
3412
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_RequestHeaders* envoy_config_route_v3_RateLimit_Action_mutable_request_headers(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3413
+ struct envoy_config_route_v3_RateLimit_Action_RequestHeaders* sub = (struct envoy_config_route_v3_RateLimit_Action_RequestHeaders*)envoy_config_route_v3_RateLimit_Action_request_headers(msg);
3414
+ if (sub == NULL) {
3415
+ sub = (struct envoy_config_route_v3_RateLimit_Action_RequestHeaders*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_RequestHeaders_msginit, arena);
3416
+ if (!sub) return NULL;
3417
+ envoy_config_route_v3_RateLimit_Action_set_request_headers(msg, sub);
3418
+ }
3419
+ return sub;
3420
+ }
3421
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_remote_address(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_RemoteAddress* value) {
3422
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_RemoteAddress*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 4);
3423
+ }
3424
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_RemoteAddress* envoy_config_route_v3_RateLimit_Action_mutable_remote_address(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3425
+ struct envoy_config_route_v3_RateLimit_Action_RemoteAddress* sub = (struct envoy_config_route_v3_RateLimit_Action_RemoteAddress*)envoy_config_route_v3_RateLimit_Action_remote_address(msg);
3426
+ if (sub == NULL) {
3427
+ sub = (struct envoy_config_route_v3_RateLimit_Action_RemoteAddress*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_RemoteAddress_msginit, arena);
3428
+ if (!sub) return NULL;
3429
+ envoy_config_route_v3_RateLimit_Action_set_remote_address(msg, sub);
3430
+ }
3431
+ return sub;
3432
+ }
3433
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_generic_key(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_GenericKey* value) {
3434
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_GenericKey*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 5);
3435
+ }
3436
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_GenericKey* envoy_config_route_v3_RateLimit_Action_mutable_generic_key(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3437
+ struct envoy_config_route_v3_RateLimit_Action_GenericKey* sub = (struct envoy_config_route_v3_RateLimit_Action_GenericKey*)envoy_config_route_v3_RateLimit_Action_generic_key(msg);
3438
+ if (sub == NULL) {
3439
+ sub = (struct envoy_config_route_v3_RateLimit_Action_GenericKey*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_GenericKey_msginit, arena);
3440
+ if (!sub) return NULL;
3441
+ envoy_config_route_v3_RateLimit_Action_set_generic_key(msg, sub);
3442
+ }
3443
+ return sub;
3444
+ }
3445
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_header_value_match(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_HeaderValueMatch* value) {
3446
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_HeaderValueMatch*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 6);
3447
+ }
3448
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_HeaderValueMatch* envoy_config_route_v3_RateLimit_Action_mutable_header_value_match(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3449
+ struct envoy_config_route_v3_RateLimit_Action_HeaderValueMatch* sub = (struct envoy_config_route_v3_RateLimit_Action_HeaderValueMatch*)envoy_config_route_v3_RateLimit_Action_header_value_match(msg);
3450
+ if (sub == NULL) {
3451
+ sub = (struct envoy_config_route_v3_RateLimit_Action_HeaderValueMatch*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_msginit, arena);
3452
+ if (!sub) return NULL;
3453
+ envoy_config_route_v3_RateLimit_Action_set_header_value_match(msg, sub);
3454
+ }
3455
+ return sub;
3456
+ }
3457
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_dynamic_metadata(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_DynamicMetaData* value) {
3458
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_DynamicMetaData*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 7);
3459
+ }
3460
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_DynamicMetaData* envoy_config_route_v3_RateLimit_Action_mutable_dynamic_metadata(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3461
+ struct envoy_config_route_v3_RateLimit_Action_DynamicMetaData* sub = (struct envoy_config_route_v3_RateLimit_Action_DynamicMetaData*)envoy_config_route_v3_RateLimit_Action_dynamic_metadata(msg);
3462
+ if (sub == NULL) {
3463
+ sub = (struct envoy_config_route_v3_RateLimit_Action_DynamicMetaData*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_DynamicMetaData_msginit, arena);
3464
+ if (!sub) return NULL;
3465
+ envoy_config_route_v3_RateLimit_Action_set_dynamic_metadata(msg, sub);
3466
+ }
3467
+ return sub;
3468
+ }
3469
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_metadata(envoy_config_route_v3_RateLimit_Action *msg, envoy_config_route_v3_RateLimit_Action_MetaData* value) {
3470
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Action_MetaData*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 8);
3471
+ }
3472
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Action_MetaData* envoy_config_route_v3_RateLimit_Action_mutable_metadata(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3473
+ struct envoy_config_route_v3_RateLimit_Action_MetaData* sub = (struct envoy_config_route_v3_RateLimit_Action_MetaData*)envoy_config_route_v3_RateLimit_Action_metadata(msg);
3474
+ if (sub == NULL) {
3475
+ sub = (struct envoy_config_route_v3_RateLimit_Action_MetaData*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_MetaData_msginit, arena);
3476
+ if (!sub) return NULL;
3477
+ envoy_config_route_v3_RateLimit_Action_set_metadata(msg, sub);
3478
+ }
3479
+ return sub;
3480
+ }
3481
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_set_extension(envoy_config_route_v3_RateLimit_Action *msg, struct envoy_config_core_v3_TypedExtensionConfig* value) {
3482
+ UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_TypedExtensionConfig*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 9);
3483
+ }
3484
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_route_v3_RateLimit_Action_mutable_extension(envoy_config_route_v3_RateLimit_Action *msg, upb_arena *arena) {
3485
+ struct envoy_config_core_v3_TypedExtensionConfig* sub = (struct envoy_config_core_v3_TypedExtensionConfig*)envoy_config_route_v3_RateLimit_Action_extension(msg);
3486
+ if (sub == NULL) {
3487
+ sub = (struct envoy_config_core_v3_TypedExtensionConfig*)_upb_msg_new(&envoy_config_core_v3_TypedExtensionConfig_msginit, arena);
3488
+ if (!sub) return NULL;
3489
+ envoy_config_route_v3_RateLimit_Action_set_extension(msg, sub);
3490
+ }
3491
+ return sub;
3492
+ }
3493
+
3494
+ /* envoy.config.route.v3.RateLimit.Action.SourceCluster */
3495
+
3496
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_SourceCluster *envoy_config_route_v3_RateLimit_Action_SourceCluster_new(upb_arena *arena) {
3497
+ return (envoy_config_route_v3_RateLimit_Action_SourceCluster *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_SourceCluster_msginit, arena);
3498
+ }
3499
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_SourceCluster *envoy_config_route_v3_RateLimit_Action_SourceCluster_parse(const char *buf, size_t size,
3500
+ upb_arena *arena) {
3501
+ envoy_config_route_v3_RateLimit_Action_SourceCluster *ret = envoy_config_route_v3_RateLimit_Action_SourceCluster_new(arena);
3502
+ if (!ret) return NULL;
3503
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_SourceCluster_msginit, arena)) return NULL;
3504
+ return ret;
3505
+ }
3506
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_SourceCluster *envoy_config_route_v3_RateLimit_Action_SourceCluster_parse_ex(const char *buf, size_t size,
3507
+ const upb_extreg *extreg, int options,
3508
+ upb_arena *arena) {
3509
+ envoy_config_route_v3_RateLimit_Action_SourceCluster *ret = envoy_config_route_v3_RateLimit_Action_SourceCluster_new(arena);
3510
+ if (!ret) return NULL;
3511
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_SourceCluster_msginit, extreg, options, arena)) {
3512
+ return NULL;
3513
+ }
3514
+ return ret;
3515
+ }
3516
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_SourceCluster_serialize(const envoy_config_route_v3_RateLimit_Action_SourceCluster *msg, upb_arena *arena, size_t *len) {
3517
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_SourceCluster_msginit, arena, len);
3518
+ }
3519
+
3520
+
3521
+
3522
+ /* envoy.config.route.v3.RateLimit.Action.DestinationCluster */
3523
+
3524
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_DestinationCluster *envoy_config_route_v3_RateLimit_Action_DestinationCluster_new(upb_arena *arena) {
3525
+ return (envoy_config_route_v3_RateLimit_Action_DestinationCluster *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_DestinationCluster_msginit, arena);
3526
+ }
3527
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_DestinationCluster *envoy_config_route_v3_RateLimit_Action_DestinationCluster_parse(const char *buf, size_t size,
3528
+ upb_arena *arena) {
3529
+ envoy_config_route_v3_RateLimit_Action_DestinationCluster *ret = envoy_config_route_v3_RateLimit_Action_DestinationCluster_new(arena);
3530
+ if (!ret) return NULL;
3531
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_DestinationCluster_msginit, arena)) return NULL;
3532
+ return ret;
3533
+ }
3534
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_DestinationCluster *envoy_config_route_v3_RateLimit_Action_DestinationCluster_parse_ex(const char *buf, size_t size,
3535
+ const upb_extreg *extreg, int options,
3536
+ upb_arena *arena) {
3537
+ envoy_config_route_v3_RateLimit_Action_DestinationCluster *ret = envoy_config_route_v3_RateLimit_Action_DestinationCluster_new(arena);
3538
+ if (!ret) return NULL;
3539
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_DestinationCluster_msginit, extreg, options, arena)) {
3540
+ return NULL;
3541
+ }
3542
+ return ret;
3543
+ }
3544
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_DestinationCluster_serialize(const envoy_config_route_v3_RateLimit_Action_DestinationCluster *msg, upb_arena *arena, size_t *len) {
3545
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_DestinationCluster_msginit, arena, len);
3546
+ }
3547
+
3548
+
3549
+
3550
+ /* envoy.config.route.v3.RateLimit.Action.RequestHeaders */
3551
+
3552
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_RequestHeaders *envoy_config_route_v3_RateLimit_Action_RequestHeaders_new(upb_arena *arena) {
3553
+ return (envoy_config_route_v3_RateLimit_Action_RequestHeaders *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_RequestHeaders_msginit, arena);
3554
+ }
3555
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_RequestHeaders *envoy_config_route_v3_RateLimit_Action_RequestHeaders_parse(const char *buf, size_t size,
3556
+ upb_arena *arena) {
3557
+ envoy_config_route_v3_RateLimit_Action_RequestHeaders *ret = envoy_config_route_v3_RateLimit_Action_RequestHeaders_new(arena);
3558
+ if (!ret) return NULL;
3559
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_RequestHeaders_msginit, arena)) return NULL;
3560
+ return ret;
3561
+ }
3562
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_RequestHeaders *envoy_config_route_v3_RateLimit_Action_RequestHeaders_parse_ex(const char *buf, size_t size,
3563
+ const upb_extreg *extreg, int options,
3564
+ upb_arena *arena) {
3565
+ envoy_config_route_v3_RateLimit_Action_RequestHeaders *ret = envoy_config_route_v3_RateLimit_Action_RequestHeaders_new(arena);
3566
+ if (!ret) return NULL;
3567
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_RequestHeaders_msginit, extreg, options, arena)) {
3568
+ return NULL;
3569
+ }
3570
+ return ret;
3571
+ }
3572
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_RequestHeaders_serialize(const envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg, upb_arena *arena, size_t *len) {
3573
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_RequestHeaders_msginit, arena, len);
3574
+ }
3575
+
3576
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_RequestHeaders_header_name(const envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
3577
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_RequestHeaders_descriptor_key(const envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
3578
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_RequestHeaders_skip_if_absent(const envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool); }
3579
+
3580
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_RequestHeaders_set_header_name(envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg, upb_strview value) {
3581
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
3582
+ }
3583
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_RequestHeaders_set_descriptor_key(envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg, upb_strview value) {
3584
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
3585
+ }
3586
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_RequestHeaders_set_skip_if_absent(envoy_config_route_v3_RateLimit_Action_RequestHeaders *msg, bool value) {
3587
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = value;
3588
+ }
3589
+
3590
+ /* envoy.config.route.v3.RateLimit.Action.RemoteAddress */
3591
+
3592
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_RemoteAddress *envoy_config_route_v3_RateLimit_Action_RemoteAddress_new(upb_arena *arena) {
3593
+ return (envoy_config_route_v3_RateLimit_Action_RemoteAddress *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_RemoteAddress_msginit, arena);
3594
+ }
3595
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_RemoteAddress *envoy_config_route_v3_RateLimit_Action_RemoteAddress_parse(const char *buf, size_t size,
3596
+ upb_arena *arena) {
3597
+ envoy_config_route_v3_RateLimit_Action_RemoteAddress *ret = envoy_config_route_v3_RateLimit_Action_RemoteAddress_new(arena);
3598
+ if (!ret) return NULL;
3599
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_RemoteAddress_msginit, arena)) return NULL;
3600
+ return ret;
3601
+ }
3602
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_RemoteAddress *envoy_config_route_v3_RateLimit_Action_RemoteAddress_parse_ex(const char *buf, size_t size,
3603
+ const upb_extreg *extreg, int options,
3604
+ upb_arena *arena) {
3605
+ envoy_config_route_v3_RateLimit_Action_RemoteAddress *ret = envoy_config_route_v3_RateLimit_Action_RemoteAddress_new(arena);
3606
+ if (!ret) return NULL;
3607
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_RemoteAddress_msginit, extreg, options, arena)) {
3608
+ return NULL;
3609
+ }
3610
+ return ret;
3611
+ }
3612
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_RemoteAddress_serialize(const envoy_config_route_v3_RateLimit_Action_RemoteAddress *msg, upb_arena *arena, size_t *len) {
3613
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_RemoteAddress_msginit, arena, len);
3614
+ }
3615
+
3616
+
3617
+
3618
+ /* envoy.config.route.v3.RateLimit.Action.GenericKey */
3619
+
3620
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_GenericKey *envoy_config_route_v3_RateLimit_Action_GenericKey_new(upb_arena *arena) {
3621
+ return (envoy_config_route_v3_RateLimit_Action_GenericKey *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_GenericKey_msginit, arena);
3622
+ }
3623
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_GenericKey *envoy_config_route_v3_RateLimit_Action_GenericKey_parse(const char *buf, size_t size,
3624
+ upb_arena *arena) {
3625
+ envoy_config_route_v3_RateLimit_Action_GenericKey *ret = envoy_config_route_v3_RateLimit_Action_GenericKey_new(arena);
3626
+ if (!ret) return NULL;
3627
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_GenericKey_msginit, arena)) return NULL;
3628
+ return ret;
3629
+ }
3630
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_GenericKey *envoy_config_route_v3_RateLimit_Action_GenericKey_parse_ex(const char *buf, size_t size,
3631
+ const upb_extreg *extreg, int options,
3632
+ upb_arena *arena) {
3633
+ envoy_config_route_v3_RateLimit_Action_GenericKey *ret = envoy_config_route_v3_RateLimit_Action_GenericKey_new(arena);
3634
+ if (!ret) return NULL;
3635
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_GenericKey_msginit, extreg, options, arena)) {
3636
+ return NULL;
3637
+ }
3638
+ return ret;
3639
+ }
3640
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_GenericKey_serialize(const envoy_config_route_v3_RateLimit_Action_GenericKey *msg, upb_arena *arena, size_t *len) {
3641
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_GenericKey_msginit, arena, len);
3642
+ }
3643
+
3644
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_GenericKey_descriptor_value(const envoy_config_route_v3_RateLimit_Action_GenericKey *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
3645
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_GenericKey_descriptor_key(const envoy_config_route_v3_RateLimit_Action_GenericKey *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_strview); }
3646
+
3647
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_GenericKey_set_descriptor_value(envoy_config_route_v3_RateLimit_Action_GenericKey *msg, upb_strview value) {
3648
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
3649
+ }
3650
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_GenericKey_set_descriptor_key(envoy_config_route_v3_RateLimit_Action_GenericKey *msg, upb_strview value) {
3651
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_strview) = value;
3652
+ }
3653
+
3654
+ /* envoy.config.route.v3.RateLimit.Action.HeaderValueMatch */
3655
+
3656
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_new(upb_arena *arena) {
3657
+ return (envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_msginit, arena);
3658
+ }
3659
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_parse(const char *buf, size_t size,
3660
+ upb_arena *arena) {
3661
+ envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *ret = envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_new(arena);
3662
+ if (!ret) return NULL;
3663
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_msginit, arena)) return NULL;
3664
+ return ret;
3665
+ }
3666
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_parse_ex(const char *buf, size_t size,
3667
+ const upb_extreg *extreg, int options,
3668
+ upb_arena *arena) {
3669
+ envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *ret = envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_new(arena);
3670
+ if (!ret) return NULL;
3671
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_msginit, extreg, options, arena)) {
3672
+ return NULL;
3673
+ }
3674
+ return ret;
3675
+ }
3676
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_serialize(const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, upb_arena *arena, size_t *len) {
3677
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_msginit, arena, len);
3678
+ }
3679
+
3680
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_descriptor_value(const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
3681
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_has_expect_match(const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg) { return _upb_hasbit(msg, 1); }
3682
+ UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_expect_match(const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_BoolValue*); }
3683
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_has_headers(const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
3684
+ UPB_INLINE const envoy_config_route_v3_HeaderMatcher* const* envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_headers(const envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, size_t *len) { return (const envoy_config_route_v3_HeaderMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
3685
+
3686
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_set_descriptor_value(envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, upb_strview value) {
3687
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
3688
+ }
3689
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_set_expect_match(envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, struct google_protobuf_BoolValue* value) {
3690
+ _upb_sethas(msg, 1);
3691
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_BoolValue*) = value;
3692
+ }
3693
+ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_mutable_expect_match(envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, upb_arena *arena) {
3694
+ struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_expect_match(msg);
3695
+ if (sub == NULL) {
3696
+ sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
3697
+ if (!sub) return NULL;
3698
+ envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_set_expect_match(msg, sub);
3699
+ }
3700
+ return sub;
3701
+ }
3702
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_mutable_headers(envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, size_t *len) {
3703
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
3704
+ }
3705
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher** envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_resize_headers(envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, size_t len, upb_arena *arena) {
3706
+ return (envoy_config_route_v3_HeaderMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(16, 32), len, UPB_SIZE(2, 3), arena);
3707
+ }
3708
+ UPB_INLINE struct envoy_config_route_v3_HeaderMatcher* envoy_config_route_v3_RateLimit_Action_HeaderValueMatch_add_headers(envoy_config_route_v3_RateLimit_Action_HeaderValueMatch *msg, upb_arena *arena) {
3709
+ struct envoy_config_route_v3_HeaderMatcher* sub = (struct envoy_config_route_v3_HeaderMatcher*)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
3710
+ bool ok = _upb_array_append_accessor2(
3711
+ msg, UPB_SIZE(16, 32), UPB_SIZE(2, 3), &sub, arena);
3712
+ if (!ok) return NULL;
3713
+ return sub;
3714
+ }
3715
+
3716
+ /* envoy.config.route.v3.RateLimit.Action.DynamicMetaData */
3717
+
3718
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_DynamicMetaData *envoy_config_route_v3_RateLimit_Action_DynamicMetaData_new(upb_arena *arena) {
3719
+ return (envoy_config_route_v3_RateLimit_Action_DynamicMetaData *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_DynamicMetaData_msginit, arena);
3720
+ }
3721
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_DynamicMetaData *envoy_config_route_v3_RateLimit_Action_DynamicMetaData_parse(const char *buf, size_t size,
3722
+ upb_arena *arena) {
3723
+ envoy_config_route_v3_RateLimit_Action_DynamicMetaData *ret = envoy_config_route_v3_RateLimit_Action_DynamicMetaData_new(arena);
3724
+ if (!ret) return NULL;
3725
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_DynamicMetaData_msginit, arena)) return NULL;
3726
+ return ret;
3727
+ }
3728
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_DynamicMetaData *envoy_config_route_v3_RateLimit_Action_DynamicMetaData_parse_ex(const char *buf, size_t size,
3729
+ const upb_extreg *extreg, int options,
3730
+ upb_arena *arena) {
3731
+ envoy_config_route_v3_RateLimit_Action_DynamicMetaData *ret = envoy_config_route_v3_RateLimit_Action_DynamicMetaData_new(arena);
3732
+ if (!ret) return NULL;
3733
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_DynamicMetaData_msginit, extreg, options, arena)) {
3734
+ return NULL;
3735
+ }
3736
+ return ret;
3737
+ }
3738
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_DynamicMetaData_serialize(const envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg, upb_arena *arena, size_t *len) {
3739
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_DynamicMetaData_msginit, arena, len);
3740
+ }
3741
+
3742
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_DynamicMetaData_descriptor_key(const envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
3743
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_DynamicMetaData_has_metadata_key(const envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg) { return _upb_hasbit(msg, 1); }
3744
+ UPB_INLINE const struct envoy_type_metadata_v3_MetadataKey* envoy_config_route_v3_RateLimit_Action_DynamicMetaData_metadata_key(const envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), const struct envoy_type_metadata_v3_MetadataKey*); }
3745
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_DynamicMetaData_default_value(const envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
3746
+
3747
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_DynamicMetaData_set_descriptor_key(envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg, upb_strview value) {
3748
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
3749
+ }
3750
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_DynamicMetaData_set_metadata_key(envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg, struct envoy_type_metadata_v3_MetadataKey* value) {
3751
+ _upb_sethas(msg, 1);
3752
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), struct envoy_type_metadata_v3_MetadataKey*) = value;
3753
+ }
3754
+ UPB_INLINE struct envoy_type_metadata_v3_MetadataKey* envoy_config_route_v3_RateLimit_Action_DynamicMetaData_mutable_metadata_key(envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg, upb_arena *arena) {
3755
+ struct envoy_type_metadata_v3_MetadataKey* sub = (struct envoy_type_metadata_v3_MetadataKey*)envoy_config_route_v3_RateLimit_Action_DynamicMetaData_metadata_key(msg);
3756
+ if (sub == NULL) {
3757
+ sub = (struct envoy_type_metadata_v3_MetadataKey*)_upb_msg_new(&envoy_type_metadata_v3_MetadataKey_msginit, arena);
3758
+ if (!sub) return NULL;
3759
+ envoy_config_route_v3_RateLimit_Action_DynamicMetaData_set_metadata_key(msg, sub);
3760
+ }
3761
+ return sub;
3762
+ }
3763
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_DynamicMetaData_set_default_value(envoy_config_route_v3_RateLimit_Action_DynamicMetaData *msg, upb_strview value) {
3764
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
3765
+ }
3766
+
3767
+ /* envoy.config.route.v3.RateLimit.Action.MetaData */
3768
+
3769
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_MetaData *envoy_config_route_v3_RateLimit_Action_MetaData_new(upb_arena *arena) {
3770
+ return (envoy_config_route_v3_RateLimit_Action_MetaData *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Action_MetaData_msginit, arena);
3771
+ }
3772
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_MetaData *envoy_config_route_v3_RateLimit_Action_MetaData_parse(const char *buf, size_t size,
3773
+ upb_arena *arena) {
3774
+ envoy_config_route_v3_RateLimit_Action_MetaData *ret = envoy_config_route_v3_RateLimit_Action_MetaData_new(arena);
3775
+ if (!ret) return NULL;
3776
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_MetaData_msginit, arena)) return NULL;
3777
+ return ret;
3778
+ }
3779
+ UPB_INLINE envoy_config_route_v3_RateLimit_Action_MetaData *envoy_config_route_v3_RateLimit_Action_MetaData_parse_ex(const char *buf, size_t size,
3780
+ const upb_extreg *extreg, int options,
3781
+ upb_arena *arena) {
3782
+ envoy_config_route_v3_RateLimit_Action_MetaData *ret = envoy_config_route_v3_RateLimit_Action_MetaData_new(arena);
3783
+ if (!ret) return NULL;
3784
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Action_MetaData_msginit, extreg, options, arena)) {
3785
+ return NULL;
3786
+ }
3787
+ return ret;
3788
+ }
3789
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Action_MetaData_serialize(const envoy_config_route_v3_RateLimit_Action_MetaData *msg, upb_arena *arena, size_t *len) {
3790
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Action_MetaData_msginit, arena, len);
3791
+ }
3792
+
3793
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_MetaData_descriptor_key(const envoy_config_route_v3_RateLimit_Action_MetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_strview); }
3794
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Action_MetaData_has_metadata_key(const envoy_config_route_v3_RateLimit_Action_MetaData *msg) { return _upb_hasbit(msg, 1); }
3795
+ UPB_INLINE const struct envoy_type_metadata_v3_MetadataKey* envoy_config_route_v3_RateLimit_Action_MetaData_metadata_key(const envoy_config_route_v3_RateLimit_Action_MetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const struct envoy_type_metadata_v3_MetadataKey*); }
3796
+ UPB_INLINE upb_strview envoy_config_route_v3_RateLimit_Action_MetaData_default_value(const envoy_config_route_v3_RateLimit_Action_MetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_strview); }
3797
+ UPB_INLINE int32_t envoy_config_route_v3_RateLimit_Action_MetaData_source(const envoy_config_route_v3_RateLimit_Action_MetaData *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t); }
3798
+
3799
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_MetaData_set_descriptor_key(envoy_config_route_v3_RateLimit_Action_MetaData *msg, upb_strview value) {
3800
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_strview) = value;
3801
+ }
3802
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_MetaData_set_metadata_key(envoy_config_route_v3_RateLimit_Action_MetaData *msg, struct envoy_type_metadata_v3_MetadataKey* value) {
3803
+ _upb_sethas(msg, 1);
3804
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), struct envoy_type_metadata_v3_MetadataKey*) = value;
3805
+ }
3806
+ UPB_INLINE struct envoy_type_metadata_v3_MetadataKey* envoy_config_route_v3_RateLimit_Action_MetaData_mutable_metadata_key(envoy_config_route_v3_RateLimit_Action_MetaData *msg, upb_arena *arena) {
3807
+ struct envoy_type_metadata_v3_MetadataKey* sub = (struct envoy_type_metadata_v3_MetadataKey*)envoy_config_route_v3_RateLimit_Action_MetaData_metadata_key(msg);
3808
+ if (sub == NULL) {
3809
+ sub = (struct envoy_type_metadata_v3_MetadataKey*)_upb_msg_new(&envoy_type_metadata_v3_MetadataKey_msginit, arena);
3810
+ if (!sub) return NULL;
3811
+ envoy_config_route_v3_RateLimit_Action_MetaData_set_metadata_key(msg, sub);
3812
+ }
3813
+ return sub;
3814
+ }
3815
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_MetaData_set_default_value(envoy_config_route_v3_RateLimit_Action_MetaData *msg, upb_strview value) {
3816
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_strview) = value;
3817
+ }
3818
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Action_MetaData_set_source(envoy_config_route_v3_RateLimit_Action_MetaData *msg, int32_t value) {
3819
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
3820
+ }
3821
+
3822
+ /* envoy.config.route.v3.RateLimit.Override */
3823
+
3824
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override *envoy_config_route_v3_RateLimit_Override_new(upb_arena *arena) {
3825
+ return (envoy_config_route_v3_RateLimit_Override *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Override_msginit, arena);
3826
+ }
3827
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override *envoy_config_route_v3_RateLimit_Override_parse(const char *buf, size_t size,
3828
+ upb_arena *arena) {
3829
+ envoy_config_route_v3_RateLimit_Override *ret = envoy_config_route_v3_RateLimit_Override_new(arena);
3830
+ if (!ret) return NULL;
3831
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Override_msginit, arena)) return NULL;
3832
+ return ret;
3833
+ }
3834
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override *envoy_config_route_v3_RateLimit_Override_parse_ex(const char *buf, size_t size,
3835
+ const upb_extreg *extreg, int options,
3836
+ upb_arena *arena) {
3837
+ envoy_config_route_v3_RateLimit_Override *ret = envoy_config_route_v3_RateLimit_Override_new(arena);
3838
+ if (!ret) return NULL;
3839
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Override_msginit, extreg, options, arena)) {
3840
+ return NULL;
3841
+ }
3842
+ return ret;
3843
+ }
3844
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Override_serialize(const envoy_config_route_v3_RateLimit_Override *msg, upb_arena *arena, size_t *len) {
3845
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Override_msginit, arena, len);
3846
+ }
3847
+
3848
+ typedef enum {
3849
+ envoy_config_route_v3_RateLimit_Override_override_specifier_dynamic_metadata = 1,
3850
+ envoy_config_route_v3_RateLimit_Override_override_specifier_NOT_SET = 0
3851
+ } envoy_config_route_v3_RateLimit_Override_override_specifier_oneofcases;
3852
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override_override_specifier_oneofcases envoy_config_route_v3_RateLimit_Override_override_specifier_case(const envoy_config_route_v3_RateLimit_Override* msg) { return (envoy_config_route_v3_RateLimit_Override_override_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
3853
+
3854
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Override_has_dynamic_metadata(const envoy_config_route_v3_RateLimit_Override *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
3855
+ UPB_INLINE const envoy_config_route_v3_RateLimit_Override_DynamicMetadata* envoy_config_route_v3_RateLimit_Override_dynamic_metadata(const envoy_config_route_v3_RateLimit_Override *msg) { return UPB_READ_ONEOF(msg, const envoy_config_route_v3_RateLimit_Override_DynamicMetadata*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
3856
+
3857
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Override_set_dynamic_metadata(envoy_config_route_v3_RateLimit_Override *msg, envoy_config_route_v3_RateLimit_Override_DynamicMetadata* value) {
3858
+ UPB_WRITE_ONEOF(msg, envoy_config_route_v3_RateLimit_Override_DynamicMetadata*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
3859
+ }
3860
+ UPB_INLINE struct envoy_config_route_v3_RateLimit_Override_DynamicMetadata* envoy_config_route_v3_RateLimit_Override_mutable_dynamic_metadata(envoy_config_route_v3_RateLimit_Override *msg, upb_arena *arena) {
3861
+ struct envoy_config_route_v3_RateLimit_Override_DynamicMetadata* sub = (struct envoy_config_route_v3_RateLimit_Override_DynamicMetadata*)envoy_config_route_v3_RateLimit_Override_dynamic_metadata(msg);
3862
+ if (sub == NULL) {
3863
+ sub = (struct envoy_config_route_v3_RateLimit_Override_DynamicMetadata*)_upb_msg_new(&envoy_config_route_v3_RateLimit_Override_DynamicMetadata_msginit, arena);
3864
+ if (!sub) return NULL;
3865
+ envoy_config_route_v3_RateLimit_Override_set_dynamic_metadata(msg, sub);
3866
+ }
3867
+ return sub;
3868
+ }
3869
+
3870
+ /* envoy.config.route.v3.RateLimit.Override.DynamicMetadata */
3871
+
3872
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override_DynamicMetadata *envoy_config_route_v3_RateLimit_Override_DynamicMetadata_new(upb_arena *arena) {
3873
+ return (envoy_config_route_v3_RateLimit_Override_DynamicMetadata *)_upb_msg_new(&envoy_config_route_v3_RateLimit_Override_DynamicMetadata_msginit, arena);
3874
+ }
3875
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override_DynamicMetadata *envoy_config_route_v3_RateLimit_Override_DynamicMetadata_parse(const char *buf, size_t size,
3876
+ upb_arena *arena) {
3877
+ envoy_config_route_v3_RateLimit_Override_DynamicMetadata *ret = envoy_config_route_v3_RateLimit_Override_DynamicMetadata_new(arena);
3878
+ if (!ret) return NULL;
3879
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Override_DynamicMetadata_msginit, arena)) return NULL;
3880
+ return ret;
3881
+ }
3882
+ UPB_INLINE envoy_config_route_v3_RateLimit_Override_DynamicMetadata *envoy_config_route_v3_RateLimit_Override_DynamicMetadata_parse_ex(const char *buf, size_t size,
3883
+ const upb_extreg *extreg, int options,
3884
+ upb_arena *arena) {
3885
+ envoy_config_route_v3_RateLimit_Override_DynamicMetadata *ret = envoy_config_route_v3_RateLimit_Override_DynamicMetadata_new(arena);
3886
+ if (!ret) return NULL;
3887
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_RateLimit_Override_DynamicMetadata_msginit, extreg, options, arena)) {
3888
+ return NULL;
3889
+ }
3890
+ return ret;
3891
+ }
3892
+ UPB_INLINE char *envoy_config_route_v3_RateLimit_Override_DynamicMetadata_serialize(const envoy_config_route_v3_RateLimit_Override_DynamicMetadata *msg, upb_arena *arena, size_t *len) {
3893
+ return upb_encode(msg, &envoy_config_route_v3_RateLimit_Override_DynamicMetadata_msginit, arena, len);
3894
+ }
3895
+
3896
+ UPB_INLINE bool envoy_config_route_v3_RateLimit_Override_DynamicMetadata_has_metadata_key(const envoy_config_route_v3_RateLimit_Override_DynamicMetadata *msg) { return _upb_hasbit(msg, 1); }
3897
+ UPB_INLINE const struct envoy_type_metadata_v3_MetadataKey* envoy_config_route_v3_RateLimit_Override_DynamicMetadata_metadata_key(const envoy_config_route_v3_RateLimit_Override_DynamicMetadata *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_metadata_v3_MetadataKey*); }
3898
+
3899
+ UPB_INLINE void envoy_config_route_v3_RateLimit_Override_DynamicMetadata_set_metadata_key(envoy_config_route_v3_RateLimit_Override_DynamicMetadata *msg, struct envoy_type_metadata_v3_MetadataKey* value) {
3900
+ _upb_sethas(msg, 1);
3901
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_metadata_v3_MetadataKey*) = value;
3902
+ }
3903
+ UPB_INLINE struct envoy_type_metadata_v3_MetadataKey* envoy_config_route_v3_RateLimit_Override_DynamicMetadata_mutable_metadata_key(envoy_config_route_v3_RateLimit_Override_DynamicMetadata *msg, upb_arena *arena) {
3904
+ struct envoy_type_metadata_v3_MetadataKey* sub = (struct envoy_type_metadata_v3_MetadataKey*)envoy_config_route_v3_RateLimit_Override_DynamicMetadata_metadata_key(msg);
3905
+ if (sub == NULL) {
3906
+ sub = (struct envoy_type_metadata_v3_MetadataKey*)_upb_msg_new(&envoy_type_metadata_v3_MetadataKey_msginit, arena);
3907
+ if (!sub) return NULL;
3908
+ envoy_config_route_v3_RateLimit_Override_DynamicMetadata_set_metadata_key(msg, sub);
3909
+ }
3910
+ return sub;
3911
+ }
3912
+
3913
+ /* envoy.config.route.v3.HeaderMatcher */
3914
+
3915
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher *envoy_config_route_v3_HeaderMatcher_new(upb_arena *arena) {
3916
+ return (envoy_config_route_v3_HeaderMatcher *)_upb_msg_new(&envoy_config_route_v3_HeaderMatcher_msginit, arena);
3917
+ }
3918
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher *envoy_config_route_v3_HeaderMatcher_parse(const char *buf, size_t size,
3919
+ upb_arena *arena) {
3920
+ envoy_config_route_v3_HeaderMatcher *ret = envoy_config_route_v3_HeaderMatcher_new(arena);
3921
+ if (!ret) return NULL;
3922
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_HeaderMatcher_msginit, arena)) return NULL;
3923
+ return ret;
3924
+ }
3925
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher *envoy_config_route_v3_HeaderMatcher_parse_ex(const char *buf, size_t size,
3926
+ const upb_extreg *extreg, int options,
3927
+ upb_arena *arena) {
3928
+ envoy_config_route_v3_HeaderMatcher *ret = envoy_config_route_v3_HeaderMatcher_new(arena);
3929
+ if (!ret) return NULL;
3930
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_HeaderMatcher_msginit, extreg, options, arena)) {
3931
+ return NULL;
3932
+ }
3933
+ return ret;
3934
+ }
3935
+ UPB_INLINE char *envoy_config_route_v3_HeaderMatcher_serialize(const envoy_config_route_v3_HeaderMatcher *msg, upb_arena *arena, size_t *len) {
3936
+ return upb_encode(msg, &envoy_config_route_v3_HeaderMatcher_msginit, arena, len);
3937
+ }
3938
+
3939
+ typedef enum {
3940
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_exact_match = 4,
3941
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_safe_regex_match = 11,
3942
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_range_match = 6,
3943
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_present_match = 7,
3944
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_prefix_match = 9,
3945
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_suffix_match = 10,
3946
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_contains_match = 12,
3947
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_string_match = 13,
3948
+ envoy_config_route_v3_HeaderMatcher_header_match_specifier_NOT_SET = 0
3949
+ } envoy_config_route_v3_HeaderMatcher_header_match_specifier_oneofcases;
3950
+ UPB_INLINE envoy_config_route_v3_HeaderMatcher_header_match_specifier_oneofcases envoy_config_route_v3_HeaderMatcher_header_match_specifier_case(const envoy_config_route_v3_HeaderMatcher* msg) { return (envoy_config_route_v3_HeaderMatcher_header_match_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(20, 40), int32_t); }
3951
+
3952
+ UPB_INLINE upb_strview envoy_config_route_v3_HeaderMatcher_name(const envoy_config_route_v3_HeaderMatcher *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
3953
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_exact_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 4; }
3954
+ UPB_INLINE upb_strview envoy_config_route_v3_HeaderMatcher_exact_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 4, upb_strview_make("", strlen(""))); }
3955
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_range_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 6; }
3956
+ UPB_INLINE const struct envoy_type_v3_Int64Range* envoy_config_route_v3_HeaderMatcher_range_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_v3_Int64Range*, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 6, NULL); }
3957
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_present_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 7; }
3958
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_present_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 7, false); }
3959
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_invert_match(const envoy_config_route_v3_HeaderMatcher *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool); }
3960
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_prefix_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 9; }
3961
+ UPB_INLINE upb_strview envoy_config_route_v3_HeaderMatcher_prefix_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 9, upb_strview_make("", strlen(""))); }
3962
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_suffix_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 10; }
3963
+ UPB_INLINE upb_strview envoy_config_route_v3_HeaderMatcher_suffix_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 10, upb_strview_make("", strlen(""))); }
3964
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_safe_regex_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 11; }
3965
+ UPB_INLINE const struct envoy_type_matcher_v3_RegexMatcher* envoy_config_route_v3_HeaderMatcher_safe_regex_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_RegexMatcher*, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 11, NULL); }
3966
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_contains_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 12; }
3967
+ UPB_INLINE upb_strview envoy_config_route_v3_HeaderMatcher_contains_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 12, upb_strview_make("", strlen(""))); }
3968
+ UPB_INLINE bool envoy_config_route_v3_HeaderMatcher_has_string_match(const envoy_config_route_v3_HeaderMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 13; }
3969
+ UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* envoy_config_route_v3_HeaderMatcher_string_match(const envoy_config_route_v3_HeaderMatcher *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_StringMatcher*, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 13, NULL); }
3970
+
3971
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_name(envoy_config_route_v3_HeaderMatcher *msg, upb_strview value) {
3972
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
3973
+ }
3974
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_exact_match(envoy_config_route_v3_HeaderMatcher *msg, upb_strview value) {
3975
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 4);
3976
+ }
3977
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_range_match(envoy_config_route_v3_HeaderMatcher *msg, struct envoy_type_v3_Int64Range* value) {
3978
+ UPB_WRITE_ONEOF(msg, struct envoy_type_v3_Int64Range*, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 6);
3979
+ }
3980
+ UPB_INLINE struct envoy_type_v3_Int64Range* envoy_config_route_v3_HeaderMatcher_mutable_range_match(envoy_config_route_v3_HeaderMatcher *msg, upb_arena *arena) {
3981
+ struct envoy_type_v3_Int64Range* sub = (struct envoy_type_v3_Int64Range*)envoy_config_route_v3_HeaderMatcher_range_match(msg);
3982
+ if (sub == NULL) {
3983
+ sub = (struct envoy_type_v3_Int64Range*)_upb_msg_new(&envoy_type_v3_Int64Range_msginit, arena);
3984
+ if (!sub) return NULL;
3985
+ envoy_config_route_v3_HeaderMatcher_set_range_match(msg, sub);
3986
+ }
3987
+ return sub;
3988
+ }
3989
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_present_match(envoy_config_route_v3_HeaderMatcher *msg, bool value) {
3990
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 7);
3991
+ }
3992
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_invert_match(envoy_config_route_v3_HeaderMatcher *msg, bool value) {
3993
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = value;
3994
+ }
3995
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_prefix_match(envoy_config_route_v3_HeaderMatcher *msg, upb_strview value) {
3996
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 9);
3997
+ }
3998
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_suffix_match(envoy_config_route_v3_HeaderMatcher *msg, upb_strview value) {
3999
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 10);
4000
+ }
4001
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_safe_regex_match(envoy_config_route_v3_HeaderMatcher *msg, struct envoy_type_matcher_v3_RegexMatcher* value) {
4002
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_RegexMatcher*, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 11);
4003
+ }
4004
+ UPB_INLINE struct envoy_type_matcher_v3_RegexMatcher* envoy_config_route_v3_HeaderMatcher_mutable_safe_regex_match(envoy_config_route_v3_HeaderMatcher *msg, upb_arena *arena) {
4005
+ struct envoy_type_matcher_v3_RegexMatcher* sub = (struct envoy_type_matcher_v3_RegexMatcher*)envoy_config_route_v3_HeaderMatcher_safe_regex_match(msg);
4006
+ if (sub == NULL) {
4007
+ sub = (struct envoy_type_matcher_v3_RegexMatcher*)_upb_msg_new(&envoy_type_matcher_v3_RegexMatcher_msginit, arena);
4008
+ if (!sub) return NULL;
4009
+ envoy_config_route_v3_HeaderMatcher_set_safe_regex_match(msg, sub);
4010
+ }
4011
+ return sub;
4012
+ }
4013
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_contains_match(envoy_config_route_v3_HeaderMatcher *msg, upb_strview value) {
4014
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 12);
4015
+ }
4016
+ UPB_INLINE void envoy_config_route_v3_HeaderMatcher_set_string_match(envoy_config_route_v3_HeaderMatcher *msg, struct envoy_type_matcher_v3_StringMatcher* value) {
4017
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_StringMatcher*, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 13);
4018
+ }
4019
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_config_route_v3_HeaderMatcher_mutable_string_match(envoy_config_route_v3_HeaderMatcher *msg, upb_arena *arena) {
4020
+ struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)envoy_config_route_v3_HeaderMatcher_string_match(msg);
4021
+ if (sub == NULL) {
4022
+ sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
4023
+ if (!sub) return NULL;
4024
+ envoy_config_route_v3_HeaderMatcher_set_string_match(msg, sub);
4025
+ }
4026
+ return sub;
4027
+ }
4028
+
4029
+ /* envoy.config.route.v3.QueryParameterMatcher */
4030
+
4031
+ UPB_INLINE envoy_config_route_v3_QueryParameterMatcher *envoy_config_route_v3_QueryParameterMatcher_new(upb_arena *arena) {
4032
+ return (envoy_config_route_v3_QueryParameterMatcher *)_upb_msg_new(&envoy_config_route_v3_QueryParameterMatcher_msginit, arena);
4033
+ }
4034
+ UPB_INLINE envoy_config_route_v3_QueryParameterMatcher *envoy_config_route_v3_QueryParameterMatcher_parse(const char *buf, size_t size,
4035
+ upb_arena *arena) {
4036
+ envoy_config_route_v3_QueryParameterMatcher *ret = envoy_config_route_v3_QueryParameterMatcher_new(arena);
4037
+ if (!ret) return NULL;
4038
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_QueryParameterMatcher_msginit, arena)) return NULL;
4039
+ return ret;
4040
+ }
4041
+ UPB_INLINE envoy_config_route_v3_QueryParameterMatcher *envoy_config_route_v3_QueryParameterMatcher_parse_ex(const char *buf, size_t size,
4042
+ const upb_extreg *extreg, int options,
4043
+ upb_arena *arena) {
4044
+ envoy_config_route_v3_QueryParameterMatcher *ret = envoy_config_route_v3_QueryParameterMatcher_new(arena);
4045
+ if (!ret) return NULL;
4046
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_QueryParameterMatcher_msginit, extreg, options, arena)) {
4047
+ return NULL;
4048
+ }
4049
+ return ret;
4050
+ }
4051
+ UPB_INLINE char *envoy_config_route_v3_QueryParameterMatcher_serialize(const envoy_config_route_v3_QueryParameterMatcher *msg, upb_arena *arena, size_t *len) {
4052
+ return upb_encode(msg, &envoy_config_route_v3_QueryParameterMatcher_msginit, arena, len);
4053
+ }
4054
+
4055
+ typedef enum {
4056
+ envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_string_match = 5,
4057
+ envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_present_match = 6,
4058
+ envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_NOT_SET = 0
4059
+ } envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_oneofcases;
4060
+ UPB_INLINE envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_oneofcases envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_case(const envoy_config_route_v3_QueryParameterMatcher* msg) { return (envoy_config_route_v3_QueryParameterMatcher_query_parameter_match_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
4061
+
4062
+ UPB_INLINE upb_strview envoy_config_route_v3_QueryParameterMatcher_name(const envoy_config_route_v3_QueryParameterMatcher *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
4063
+ UPB_INLINE bool envoy_config_route_v3_QueryParameterMatcher_has_string_match(const envoy_config_route_v3_QueryParameterMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 5; }
4064
+ UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* envoy_config_route_v3_QueryParameterMatcher_string_match(const envoy_config_route_v3_QueryParameterMatcher *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_StringMatcher*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 5, NULL); }
4065
+ UPB_INLINE bool envoy_config_route_v3_QueryParameterMatcher_has_present_match(const envoy_config_route_v3_QueryParameterMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 6; }
4066
+ UPB_INLINE bool envoy_config_route_v3_QueryParameterMatcher_present_match(const envoy_config_route_v3_QueryParameterMatcher *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 6, false); }
4067
+
4068
+ UPB_INLINE void envoy_config_route_v3_QueryParameterMatcher_set_name(envoy_config_route_v3_QueryParameterMatcher *msg, upb_strview value) {
4069
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
4070
+ }
4071
+ UPB_INLINE void envoy_config_route_v3_QueryParameterMatcher_set_string_match(envoy_config_route_v3_QueryParameterMatcher *msg, struct envoy_type_matcher_v3_StringMatcher* value) {
4072
+ UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_StringMatcher*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 5);
4073
+ }
4074
+ UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_config_route_v3_QueryParameterMatcher_mutable_string_match(envoy_config_route_v3_QueryParameterMatcher *msg, upb_arena *arena) {
4075
+ struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)envoy_config_route_v3_QueryParameterMatcher_string_match(msg);
4076
+ if (sub == NULL) {
4077
+ sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
4078
+ if (!sub) return NULL;
4079
+ envoy_config_route_v3_QueryParameterMatcher_set_string_match(msg, sub);
4080
+ }
4081
+ return sub;
4082
+ }
4083
+ UPB_INLINE void envoy_config_route_v3_QueryParameterMatcher_set_present_match(envoy_config_route_v3_QueryParameterMatcher *msg, bool value) {
4084
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 6);
4085
+ }
4086
+
4087
+ /* envoy.config.route.v3.InternalRedirectPolicy */
4088
+
4089
+ UPB_INLINE envoy_config_route_v3_InternalRedirectPolicy *envoy_config_route_v3_InternalRedirectPolicy_new(upb_arena *arena) {
4090
+ return (envoy_config_route_v3_InternalRedirectPolicy *)_upb_msg_new(&envoy_config_route_v3_InternalRedirectPolicy_msginit, arena);
4091
+ }
4092
+ UPB_INLINE envoy_config_route_v3_InternalRedirectPolicy *envoy_config_route_v3_InternalRedirectPolicy_parse(const char *buf, size_t size,
4093
+ upb_arena *arena) {
4094
+ envoy_config_route_v3_InternalRedirectPolicy *ret = envoy_config_route_v3_InternalRedirectPolicy_new(arena);
4095
+ if (!ret) return NULL;
4096
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_InternalRedirectPolicy_msginit, arena)) return NULL;
4097
+ return ret;
4098
+ }
4099
+ UPB_INLINE envoy_config_route_v3_InternalRedirectPolicy *envoy_config_route_v3_InternalRedirectPolicy_parse_ex(const char *buf, size_t size,
4100
+ const upb_extreg *extreg, int options,
4101
+ upb_arena *arena) {
4102
+ envoy_config_route_v3_InternalRedirectPolicy *ret = envoy_config_route_v3_InternalRedirectPolicy_new(arena);
4103
+ if (!ret) return NULL;
4104
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_InternalRedirectPolicy_msginit, extreg, options, arena)) {
4105
+ return NULL;
4106
+ }
4107
+ return ret;
4108
+ }
4109
+ UPB_INLINE char *envoy_config_route_v3_InternalRedirectPolicy_serialize(const envoy_config_route_v3_InternalRedirectPolicy *msg, upb_arena *arena, size_t *len) {
4110
+ return upb_encode(msg, &envoy_config_route_v3_InternalRedirectPolicy_msginit, arena, len);
4111
+ }
4112
+
4113
+ UPB_INLINE bool envoy_config_route_v3_InternalRedirectPolicy_has_max_internal_redirects(const envoy_config_route_v3_InternalRedirectPolicy *msg) { return _upb_hasbit(msg, 1); }
4114
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_route_v3_InternalRedirectPolicy_max_internal_redirects(const envoy_config_route_v3_InternalRedirectPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt32Value*); }
4115
+ UPB_INLINE uint32_t const* envoy_config_route_v3_InternalRedirectPolicy_redirect_response_codes(const envoy_config_route_v3_InternalRedirectPolicy *msg, size_t *len) { return (uint32_t const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
4116
+ UPB_INLINE bool envoy_config_route_v3_InternalRedirectPolicy_has_predicates(const envoy_config_route_v3_InternalRedirectPolicy *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(12, 24)); }
4117
+ UPB_INLINE const struct envoy_config_core_v3_TypedExtensionConfig* const* envoy_config_route_v3_InternalRedirectPolicy_predicates(const envoy_config_route_v3_InternalRedirectPolicy *msg, size_t *len) { return (const struct envoy_config_core_v3_TypedExtensionConfig* const*)_upb_array_accessor(msg, UPB_SIZE(12, 24), len); }
4118
+ UPB_INLINE bool envoy_config_route_v3_InternalRedirectPolicy_allow_cross_scheme_redirect(const envoy_config_route_v3_InternalRedirectPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
4119
+
4120
+ UPB_INLINE void envoy_config_route_v3_InternalRedirectPolicy_set_max_internal_redirects(envoy_config_route_v3_InternalRedirectPolicy *msg, struct google_protobuf_UInt32Value* value) {
4121
+ _upb_sethas(msg, 1);
4122
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt32Value*) = value;
4123
+ }
4124
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_route_v3_InternalRedirectPolicy_mutable_max_internal_redirects(envoy_config_route_v3_InternalRedirectPolicy *msg, upb_arena *arena) {
4125
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_route_v3_InternalRedirectPolicy_max_internal_redirects(msg);
4126
+ if (sub == NULL) {
4127
+ sub = (struct google_protobuf_UInt32Value*)_upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
4128
+ if (!sub) return NULL;
4129
+ envoy_config_route_v3_InternalRedirectPolicy_set_max_internal_redirects(msg, sub);
4130
+ }
4131
+ return sub;
4132
+ }
4133
+ UPB_INLINE uint32_t* envoy_config_route_v3_InternalRedirectPolicy_mutable_redirect_response_codes(envoy_config_route_v3_InternalRedirectPolicy *msg, size_t *len) {
4134
+ return (uint32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
4135
+ }
4136
+ UPB_INLINE uint32_t* envoy_config_route_v3_InternalRedirectPolicy_resize_redirect_response_codes(envoy_config_route_v3_InternalRedirectPolicy *msg, size_t len, upb_arena *arena) {
4137
+ return (uint32_t*)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, 2, arena);
4138
+ }
4139
+ UPB_INLINE bool envoy_config_route_v3_InternalRedirectPolicy_add_redirect_response_codes(envoy_config_route_v3_InternalRedirectPolicy *msg, uint32_t val, upb_arena *arena) {
4140
+ return _upb_array_append_accessor2(msg, UPB_SIZE(8, 16), 2, &val,
4141
+ arena);
4142
+ }
4143
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig** envoy_config_route_v3_InternalRedirectPolicy_mutable_predicates(envoy_config_route_v3_InternalRedirectPolicy *msg, size_t *len) {
4144
+ return (struct envoy_config_core_v3_TypedExtensionConfig**)_upb_array_mutable_accessor(msg, UPB_SIZE(12, 24), len);
4145
+ }
4146
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig** envoy_config_route_v3_InternalRedirectPolicy_resize_predicates(envoy_config_route_v3_InternalRedirectPolicy *msg, size_t len, upb_arena *arena) {
4147
+ return (struct envoy_config_core_v3_TypedExtensionConfig**)_upb_array_resize_accessor2(msg, UPB_SIZE(12, 24), len, UPB_SIZE(2, 3), arena);
4148
+ }
4149
+ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_route_v3_InternalRedirectPolicy_add_predicates(envoy_config_route_v3_InternalRedirectPolicy *msg, upb_arena *arena) {
4150
+ struct envoy_config_core_v3_TypedExtensionConfig* sub = (struct envoy_config_core_v3_TypedExtensionConfig*)_upb_msg_new(&envoy_config_core_v3_TypedExtensionConfig_msginit, arena);
4151
+ bool ok = _upb_array_append_accessor2(
4152
+ msg, UPB_SIZE(12, 24), UPB_SIZE(2, 3), &sub, arena);
4153
+ if (!ok) return NULL;
4154
+ return sub;
4155
+ }
4156
+ UPB_INLINE void envoy_config_route_v3_InternalRedirectPolicy_set_allow_cross_scheme_redirect(envoy_config_route_v3_InternalRedirectPolicy *msg, bool value) {
4157
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
4158
+ }
4159
+
4160
+ /* envoy.config.route.v3.FilterConfig */
4161
+
4162
+ UPB_INLINE envoy_config_route_v3_FilterConfig *envoy_config_route_v3_FilterConfig_new(upb_arena *arena) {
4163
+ return (envoy_config_route_v3_FilterConfig *)_upb_msg_new(&envoy_config_route_v3_FilterConfig_msginit, arena);
4164
+ }
4165
+ UPB_INLINE envoy_config_route_v3_FilterConfig *envoy_config_route_v3_FilterConfig_parse(const char *buf, size_t size,
4166
+ upb_arena *arena) {
4167
+ envoy_config_route_v3_FilterConfig *ret = envoy_config_route_v3_FilterConfig_new(arena);
4168
+ if (!ret) return NULL;
4169
+ if (!upb_decode(buf, size, ret, &envoy_config_route_v3_FilterConfig_msginit, arena)) return NULL;
4170
+ return ret;
4171
+ }
4172
+ UPB_INLINE envoy_config_route_v3_FilterConfig *envoy_config_route_v3_FilterConfig_parse_ex(const char *buf, size_t size,
4173
+ const upb_extreg *extreg, int options,
4174
+ upb_arena *arena) {
4175
+ envoy_config_route_v3_FilterConfig *ret = envoy_config_route_v3_FilterConfig_new(arena);
4176
+ if (!ret) return NULL;
4177
+ if (!_upb_decode(buf, size, ret, &envoy_config_route_v3_FilterConfig_msginit, extreg, options, arena)) {
4178
+ return NULL;
4179
+ }
4180
+ return ret;
4181
+ }
4182
+ UPB_INLINE char *envoy_config_route_v3_FilterConfig_serialize(const envoy_config_route_v3_FilterConfig *msg, upb_arena *arena, size_t *len) {
4183
+ return upb_encode(msg, &envoy_config_route_v3_FilterConfig_msginit, arena, len);
4184
+ }
4185
+
4186
+ UPB_INLINE bool envoy_config_route_v3_FilterConfig_has_config(const envoy_config_route_v3_FilterConfig *msg) { return _upb_hasbit(msg, 1); }
4187
+ UPB_INLINE const struct google_protobuf_Any* envoy_config_route_v3_FilterConfig_config(const envoy_config_route_v3_FilterConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Any*); }
4188
+ UPB_INLINE bool envoy_config_route_v3_FilterConfig_is_optional(const envoy_config_route_v3_FilterConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
4189
+
4190
+ UPB_INLINE void envoy_config_route_v3_FilterConfig_set_config(envoy_config_route_v3_FilterConfig *msg, struct google_protobuf_Any* value) {
4191
+ _upb_sethas(msg, 1);
4192
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Any*) = value;
4193
+ }
4194
+ UPB_INLINE struct google_protobuf_Any* envoy_config_route_v3_FilterConfig_mutable_config(envoy_config_route_v3_FilterConfig *msg, upb_arena *arena) {
4195
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_route_v3_FilterConfig_config(msg);
4196
+ if (sub == NULL) {
4197
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
4198
+ if (!sub) return NULL;
4199
+ envoy_config_route_v3_FilterConfig_set_config(msg, sub);
4200
+ }
4201
+ return sub;
4202
+ }
4203
+ UPB_INLINE void envoy_config_route_v3_FilterConfig_set_is_optional(envoy_config_route_v3_FilterConfig *msg, bool value) {
4204
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
4205
+ }
4206
+
4207
+ #ifdef __cplusplus
4208
+ } /* extern "C" */
4209
+ #endif
4210
+
4211
+ #include "upb/port_undef.inc"
4212
+
4213
+ #endif /* ENVOY_CONFIG_ROUTE_V3_ROUTE_COMPONENTS_PROTO_UPB_H_ */