CSDS Implementation (#25038)

* Implement the xDS Config Dump as CSDS in Core

* Revemp the logic of caching and constructing the CSDS response
* Unref created error
* Fix the clang tidy complains
* Resolve comments about symbol preload and Json ctor
* Improve readability
* Merge with new ADS logic && support latest CSDS
  * Refactor the version/client_status logic
  * Add support for error_state
  * Add support for does_not_exist
  * Add node information
* Fix the ProtoBuf segfault
* More test cases
* Refactor to use bytes as cache instead of JSON

* Apply clang_tidy's suggestion

* Resolve reviewer's requests

* Tiny stylish fixes && make sanity test happy

* WIP: still working on the matchers

* Update a bunch of matchers

* Improve readability a bit

* Resolve reviewer's suggestions

* Resolve reviewer's comments

* Make Unpack fail fast
pull/25153/head
Lidi Zheng 4 years ago committed by GitHub
parent 4ea47d6ae3
commit 27de24a38e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 47
      BUILD
  2. 28
      BUILD.gn
  3. 31
      CMakeLists.txt
  4. 30
      Makefile
  5. 32
      build_autogenerated.yaml
  6. 26
      config.m4
  7. 36
      config.w32
  8. 32
      gRPC-C++.podspec
  9. 48
      gRPC-Core.podspec
  10. 1
      grpc.def
  11. 32
      grpc.gemspec
  12. 16
      grpc.gyp
  13. 4
      include/grpc/grpc.h
  14. 32
      package.xml
  15. 406
      src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c
  16. 1459
      src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h
  17. 350
      src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c
  18. 1348
      src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h
  19. 144
      src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c
  20. 488
      src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h
  21. 141
      src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c
  22. 452
      src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h
  23. 93
      src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c
  24. 323
      src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h
  25. 36
      src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c
  26. 90
      src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h
  27. 46
      src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c
  28. 124
      src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h
  29. 354
      src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c
  30. 140
      src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h
  31. 383
      src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c
  32. 115
      src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h
  33. 141
      src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c
  34. 70
      src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h
  35. 141
      src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c
  36. 70
      src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h
  37. 130
      src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c
  38. 50
      src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h
  39. 56
      src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c
  40. 35
      src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h
  41. 63
      src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c
  42. 40
      src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h
  43. 316
      src/core/ext/xds/xds_api.cc
  44. 116
      src/core/ext/xds/xds_api.h
  45. 160
      src/core/ext/xds/xds_client.cc
  46. 20
      src/core/ext/xds/xds_client.h
  47. 94
      src/cpp/server/csds/csds.cc
  48. 55
      src/cpp/server/csds/csds.h
  49. 20
      src/proto/grpc/testing/xds/v3/BUILD
  50. 284
      src/proto/grpc/testing/xds/v3/config_dump.proto
  51. 89
      src/proto/grpc/testing/xds/v3/csds.proto
  52. 16
      src/python/grpcio/grpc_core_dependencies.py
  53. 2
      src/ruby/ext/grpc/rb_grpc_imports.generated.c
  54. 3
      src/ruby/ext/grpc/rb_grpc_imports.generated.h
  55. 4
      src/upb/gen_build_yaml.py
  56. 1
      test/core/surface/public_headers_must_be_c89.c
  57. 1
      test/cpp/end2end/BUILD
  58. 815
      test/cpp/end2end/xds_end2end_test.cc
  59. 7
      tools/codegen/core/gen_upb_api.sh
  60. 28
      tools/doxygen/Doxyfile.c++.internal
  61. 28
      tools/doxygen/Doxyfile.core.internal

47
BUILD

@ -1436,6 +1436,7 @@ grpc_cc_library(
"absl/functional:bind_front", "absl/functional:bind_front",
"upb_lib", "upb_lib",
"upb_textformat_lib", "upb_textformat_lib",
"upb_json_lib",
"re2", "re2",
], ],
language = "c++", language = "c++",
@ -2595,6 +2596,24 @@ grpc_cc_library(
alwayslink = 1, alwayslink = 1,
) )
grpc_cc_library(
name = "grpcpp_csds",
srcs = [
"src/cpp/server/csds/csds.cc",
],
hdrs = [
"src/cpp/server/csds/csds.h",
],
language = "c++",
public_hdrs = [
],
deps = [
":grpc++",
"//src/proto/grpc/testing/xds/v3:csds_proto",
],
alwayslink = 1,
)
grpc_cc_library( grpc_cc_library(
name = "grpc++_test", name = "grpc++_test",
srcs = [ srcs = [
@ -2728,7 +2747,9 @@ grpc_cc_library(
grpc_cc_library( grpc_cc_library(
name = "envoy_ads_upb", name = "envoy_ads_upb",
srcs = [ srcs = [
"src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c",
"src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c", "src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c",
"src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c",
"src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c", "src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c",
"src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c", "src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c",
"src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c", "src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c",
@ -2740,6 +2761,8 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c", "src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c",
"src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c", "src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c",
"src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c", "src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c",
"src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c",
"src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c",
"src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c", "src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c",
"src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c", "src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c",
"src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c", "src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c",
@ -2762,9 +2785,12 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c", "src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c",
"src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c", "src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c",
"src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c", "src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c",
"src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c",
], ],
hdrs = [ hdrs = [
"src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h",
"src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h", "src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h",
"src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h",
"src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h", "src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h",
"src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h", "src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h",
"src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h", "src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h",
@ -2776,6 +2802,8 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h", "src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h",
"src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h", "src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h",
"src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h", "src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h",
"src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h",
"src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h",
"src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h", "src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h",
"src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h", "src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h",
"src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h", "src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h",
@ -2798,6 +2826,7 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h", "src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h",
"src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h", "src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h",
"src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h", "src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h",
"src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h",
], ],
external_deps = [ external_deps = [
"upb_lib", "upb_lib",
@ -2818,7 +2847,9 @@ grpc_cc_library(
grpc_cc_library( grpc_cc_library(
name = "envoy_ads_upbdefs", name = "envoy_ads_upbdefs",
srcs = [ srcs = [
"src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c",
@ -2830,6 +2861,8 @@ grpc_cc_library(
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c",
@ -2851,9 +2884,12 @@ grpc_cc_library(
"src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c",
], ],
hdrs = [ hdrs = [
"src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h",
@ -2865,6 +2901,8 @@ grpc_cc_library(
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h",
@ -2886,6 +2924,7 @@ grpc_cc_library(
"src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h",
], ],
external_deps = [ external_deps = [
"upb_lib", "upb_lib",
@ -3044,10 +3083,12 @@ grpc_cc_library(
name = "envoy_type_upb", name = "envoy_type_upb",
srcs = [ srcs = [
"src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c",
"src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c", "src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c",
"src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c", "src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c",
@ -3058,10 +3099,12 @@ grpc_cc_library(
], ],
hdrs = [ hdrs = [
"src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h",
"src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h", "src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h",
"src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h", "src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h",
@ -3087,10 +3130,12 @@ grpc_cc_library(
name = "envoy_type_upbdefs", name = "envoy_type_upbdefs",
srcs = [ srcs = [
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c",
@ -3101,10 +3146,12 @@ grpc_cc_library(
], ],
hdrs = [ hdrs = [
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h",

@ -400,12 +400,16 @@ config("grpc_config") {
"src/core/ext/transport/inproc/inproc_plugin.cc", "src/core/ext/transport/inproc/inproc_plugin.cc",
"src/core/ext/transport/inproc/inproc_transport.cc", "src/core/ext/transport/inproc/inproc_transport.cc",
"src/core/ext/transport/inproc/inproc_transport.h", "src/core/ext/transport/inproc/inproc_transport.h",
"src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c",
"src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h",
"src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c", "src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c",
"src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h", "src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h",
"src/core/ext/upb-generated/envoy/annotations/resource.upb.c", "src/core/ext/upb-generated/envoy/annotations/resource.upb.c",
"src/core/ext/upb-generated/envoy/annotations/resource.upb.h", "src/core/ext/upb-generated/envoy/annotations/resource.upb.h",
"src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c", "src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c",
"src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h", "src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h",
"src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c",
"src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h",
"src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c", "src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c",
"src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h", "src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h",
"src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c", "src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c",
@ -454,6 +458,10 @@ config("grpc_config") {
"src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h", "src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h",
"src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c", "src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c",
"src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h", "src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h",
"src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c",
"src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h",
"src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c",
"src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h",
"src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c", "src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c",
"src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h", "src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h",
"src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c", "src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c",
@ -498,8 +506,12 @@ config("grpc_config") {
"src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h", "src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h",
"src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c", "src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c",
"src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h", "src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h",
"src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c",
"src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c",
@ -508,6 +520,8 @@ config("grpc_config") {
"src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h",
"src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c", "src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c",
"src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h", "src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h",
"src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c", "src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c",
@ -582,12 +596,16 @@ config("grpc_config") {
"src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h", "src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h",
"src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c", "src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c",
"src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h", "src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h",
"src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c",
@ -636,6 +654,10 @@ config("grpc_config") {
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c",
@ -678,8 +700,12 @@ config("grpc_config") {
"src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c",
@ -688,6 +714,8 @@ config("grpc_config") {
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c",
"src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h", "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h",
"src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c", "src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c",

@ -466,9 +466,15 @@ protobuf_generate_grpc_cpp(
protobuf_generate_grpc_cpp( protobuf_generate_grpc_cpp(
src/proto/grpc/testing/xds/v3/cluster.proto src/proto/grpc/testing/xds/v3/cluster.proto
) )
protobuf_generate_grpc_cpp(
src/proto/grpc/testing/xds/v3/config_dump.proto
)
protobuf_generate_grpc_cpp( protobuf_generate_grpc_cpp(
src/proto/grpc/testing/xds/v3/config_source.proto src/proto/grpc/testing/xds/v3/config_source.proto
) )
protobuf_generate_grpc_cpp(
src/proto/grpc/testing/xds/v3/csds.proto
)
protobuf_generate_grpc_cpp( protobuf_generate_grpc_cpp(
src/proto/grpc/testing/xds/v3/discovery.proto src/proto/grpc/testing/xds/v3/discovery.proto
) )
@ -1573,9 +1579,11 @@ add_library(grpc
src/core/ext/transport/chttp2/transport/writing.cc src/core/ext/transport/chttp2/transport/writing.cc
src/core/ext/transport/inproc/inproc_plugin.cc src/core/ext/transport/inproc/inproc_plugin.cc
src/core/ext/transport/inproc/inproc_transport.cc src/core/ext/transport/inproc/inproc_transport.cc
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c
src/core/ext/upb-generated/envoy/annotations/resource.upb.c src/core/ext/upb-generated/envoy/annotations/resource.upb.c
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c
src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c
src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c
@ -1600,6 +1608,8 @@ add_library(grpc
src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c
src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c
src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c
src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c
@ -1622,11 +1632,14 @@ add_library(grpc
src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c
src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c
src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c
src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c
@ -1664,9 +1677,11 @@ add_library(grpc
src/core/ext/upb-generated/xds/core/v3/resource.upb.c src/core/ext/upb-generated/xds/core/v3/resource.upb.c
src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c
@ -1691,6 +1706,8 @@ add_library(grpc
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c
src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c
@ -1712,11 +1729,14 @@ add_library(grpc
src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c
src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c
src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c
@ -3842,8 +3862,6 @@ add_library(upb
third_party/upb/upb/decode.c third_party/upb/upb/decode.c
third_party/upb/upb/def.c third_party/upb/upb/def.c
third_party/upb/upb/encode.c third_party/upb/upb/encode.c
third_party/upb/upb/json_decode.c
third_party/upb/upb/json_encode.c
third_party/upb/upb/msg.c third_party/upb/upb/msg.c
third_party/upb/upb/reflection.c third_party/upb/upb/reflection.c
third_party/upb/upb/table.c third_party/upb/upb/table.c
@ -16342,10 +16360,18 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/cluster.grpc.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/cluster.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/cluster.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/cluster.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/cluster.grpc.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/cluster.grpc.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_dump.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_dump.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_dump.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_dump.grpc.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.grpc.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.grpc.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/config_source.grpc.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/csds.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/csds.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/csds.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/csds.grpc.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/discovery.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/discovery.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/discovery.grpc.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/discovery.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/discovery.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/discovery.pb.h
@ -16410,6 +16436,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/tls.grpc.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/tls.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/tls.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/tls.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/tls.grpc.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/tls.grpc.pb.h
src/cpp/server/csds/csds.cc
test/cpp/end2end/test_service_impl.cc test/cpp/end2end/test_service_impl.cc
test/cpp/end2end/xds_end2end_test.cc test/cpp/end2end/xds_end2end_test.cc
third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googletest/src/gtest-all.cc

@ -1141,9 +1141,11 @@ LIBGRPC_SRC = \
src/core/ext/transport/chttp2/transport/writing.cc \ src/core/ext/transport/chttp2/transport/writing.cc \
src/core/ext/transport/inproc/inproc_plugin.cc \ src/core/ext/transport/inproc/inproc_plugin.cc \
src/core/ext/transport/inproc/inproc_transport.cc \ src/core/ext/transport/inproc/inproc_transport.cc \
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c \
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \ src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \
src/core/ext/upb-generated/envoy/annotations/resource.upb.c \ src/core/ext/upb-generated/envoy/annotations/resource.upb.c \
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \ src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c \
@ -1168,6 +1170,8 @@ LIBGRPC_SRC = \
src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c \
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c \
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \ src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \
src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \ src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \
src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c \ src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c \
@ -1190,11 +1194,14 @@ LIBGRPC_SRC = \
src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c \ src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \ src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \ src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \
src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \
src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c \ src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c \
@ -1232,9 +1239,11 @@ LIBGRPC_SRC = \
src/core/ext/upb-generated/xds/core/v3/resource.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c \
@ -1259,6 +1268,8 @@ LIBGRPC_SRC = \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c \
@ -1280,11 +1291,14 @@ LIBGRPC_SRC = \
src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c \
@ -2385,8 +2399,6 @@ LIBUPB_SRC = \
third_party/upb/upb/decode.c \ third_party/upb/upb/decode.c \
third_party/upb/upb/def.c \ third_party/upb/upb/def.c \
third_party/upb/upb/encode.c \ third_party/upb/upb/encode.c \
third_party/upb/upb/json_decode.c \
third_party/upb/upb/json_encode.c \
third_party/upb/upb/msg.c \ third_party/upb/upb/msg.c \
third_party/upb/upb/reflection.c \ third_party/upb/upb/reflection.c \
third_party/upb/upb/table.c \ third_party/upb/upb/table.c \
@ -2672,9 +2684,11 @@ src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc:
src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc: $(OPENSSL_DEP) src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc: $(OPENSSL_DEP)
src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc: $(OPENSSL_DEP) src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc: $(OPENSSL_DEP)
src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc: $(OPENSSL_DEP) src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/annotations/resource.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/annotations/resource.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c: $(OPENSSL_DEP)
@ -2699,6 +2713,8 @@ src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c: $(OPENSS
src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c: $(OPENSSL_DEP)
@ -2721,11 +2737,14 @@ src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c: $(OPENSSL_DEP)
@ -2748,9 +2767,11 @@ src/core/ext/upb-generated/xds/core/v3/context_params.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/xds/core/v3/resource.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/xds/core/v3/resource.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c: $(OPENSSL_DEP)
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c: $(OPENSSL_DEP) src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c: $(OPENSSL_DEP)
@ -2775,6 +2796,8 @@ src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c:
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c: $(OPENSSL_DEP)
@ -2796,11 +2819,14 @@ src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c: $(OPENSS
src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c: $(OPENSSL_DEP)
src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c: $(OPENSSL_DEP) src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c: $(OPENSSL_DEP)

@ -467,9 +467,11 @@ libs:
- src/core/ext/transport/chttp2/transport/stream_map.h - src/core/ext/transport/chttp2/transport/stream_map.h
- src/core/ext/transport/chttp2/transport/varint.h - src/core/ext/transport/chttp2/transport/varint.h
- src/core/ext/transport/inproc/inproc_transport.h - src/core/ext/transport/inproc/inproc_transport.h
- src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h
- src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h - src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h
- src/core/ext/upb-generated/envoy/annotations/resource.upb.h - src/core/ext/upb-generated/envoy/annotations/resource.upb.h
- src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h - src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h
- src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h
- src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h - src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h
- src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h - src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h
- src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h - src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h
@ -494,6 +496,8 @@ libs:
- src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h - src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h
- src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h - src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h
- src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h - src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h
- src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h
- src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h
- src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h - src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h
- src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h - src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h
- src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h - src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h
@ -516,11 +520,14 @@ libs:
- src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h - src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h
- src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h - src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h
- src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h - src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h
- src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h - src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h - src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h - src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h - src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h - src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h
- src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h - src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h
- src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h - src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h
- src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h - src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h
@ -558,9 +565,11 @@ libs:
- src/core/ext/upb-generated/xds/core/v3/resource.upb.h - src/core/ext/upb-generated/xds/core/v3/resource.upb.h
- src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h - src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h
- src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h - src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h
- src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h - src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h - src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h
@ -585,6 +594,8 @@ libs:
- src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h - src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h
@ -606,11 +617,14 @@ libs:
- src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h - src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h - src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h - src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h
- src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h - src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h
@ -978,9 +992,11 @@ libs:
- src/core/ext/transport/chttp2/transport/writing.cc - src/core/ext/transport/chttp2/transport/writing.cc
- src/core/ext/transport/inproc/inproc_plugin.cc - src/core/ext/transport/inproc/inproc_plugin.cc
- src/core/ext/transport/inproc/inproc_transport.cc - src/core/ext/transport/inproc/inproc_transport.cc
- src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c
- src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c - src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c
- src/core/ext/upb-generated/envoy/annotations/resource.upb.c - src/core/ext/upb-generated/envoy/annotations/resource.upb.c
- src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c - src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c
- src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c
- src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c - src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c
- src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c - src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c
- src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c - src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c
@ -1005,6 +1021,8 @@ libs:
- src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c - src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c
- src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c - src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c
- src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c - src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c
- src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c
- src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c
- src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c - src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c
- src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c - src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c
- src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c - src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c
@ -1027,11 +1045,14 @@ libs:
- src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c - src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c
- src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c - src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c
- src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c - src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c
- src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c - src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c - src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c - src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c - src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c - src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c
- src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c - src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c
- src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c - src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c
- src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c - src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c
@ -1069,9 +1090,11 @@ libs:
- src/core/ext/upb-generated/xds/core/v3/resource.upb.c - src/core/ext/upb-generated/xds/core/v3/resource.upb.c
- src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c - src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c
- src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c - src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c
- src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c - src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c - src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c
@ -1096,6 +1119,8 @@ libs:
- src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c - src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c
@ -1117,11 +1142,14 @@ libs:
- src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c - src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c - src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c - src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c
- src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c - src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c
@ -8323,6 +8351,7 @@ targets:
run: false run: false
language: c++ language: c++
headers: headers:
- src/cpp/server/csds/csds.h
- test/cpp/end2end/test_service_impl.h - test/cpp/end2end/test_service_impl.h
src: src:
- src/proto/grpc/testing/duplicate/echo_duplicate.proto - src/proto/grpc/testing/duplicate/echo_duplicate.proto
@ -8339,7 +8368,9 @@ targets:
- src/proto/grpc/testing/xds/v3/aggregate_cluster.proto - src/proto/grpc/testing/xds/v3/aggregate_cluster.proto
- src/proto/grpc/testing/xds/v3/base.proto - src/proto/grpc/testing/xds/v3/base.proto
- src/proto/grpc/testing/xds/v3/cluster.proto - src/proto/grpc/testing/xds/v3/cluster.proto
- src/proto/grpc/testing/xds/v3/config_dump.proto
- src/proto/grpc/testing/xds/v3/config_source.proto - src/proto/grpc/testing/xds/v3/config_source.proto
- src/proto/grpc/testing/xds/v3/csds.proto
- src/proto/grpc/testing/xds/v3/discovery.proto - src/proto/grpc/testing/xds/v3/discovery.proto
- src/proto/grpc/testing/xds/v3/endpoint.proto - src/proto/grpc/testing/xds/v3/endpoint.proto
- src/proto/grpc/testing/xds/v3/fault.proto - src/proto/grpc/testing/xds/v3/fault.proto
@ -8356,6 +8387,7 @@ targets:
- src/proto/grpc/testing/xds/v3/router.proto - src/proto/grpc/testing/xds/v3/router.proto
- src/proto/grpc/testing/xds/v3/string.proto - src/proto/grpc/testing/xds/v3/string.proto
- src/proto/grpc/testing/xds/v3/tls.proto - src/proto/grpc/testing/xds/v3/tls.proto
- src/cpp/server/csds/csds.cc
- test/cpp/end2end/test_service_impl.cc - test/cpp/end2end/test_service_impl.cc
- test/cpp/end2end/xds_end2end_test.cc - test/cpp/end2end/xds_end2end_test.cc
deps: deps:

@ -147,9 +147,11 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/transport/chttp2/transport/writing.cc \ src/core/ext/transport/chttp2/transport/writing.cc \
src/core/ext/transport/inproc/inproc_plugin.cc \ src/core/ext/transport/inproc/inproc_plugin.cc \
src/core/ext/transport/inproc/inproc_transport.cc \ src/core/ext/transport/inproc/inproc_transport.cc \
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c \
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \ src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \
src/core/ext/upb-generated/envoy/annotations/resource.upb.c \ src/core/ext/upb-generated/envoy/annotations/resource.upb.c \
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \ src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c \
@ -174,6 +176,8 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c \
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c \
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \ src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \
src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \ src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \
src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c \ src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c \
@ -196,11 +200,14 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c \ src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \ src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \ src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \
src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \
src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c \ src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c \
@ -239,9 +246,11 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upb-generated/xds/core/v3/resource.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c \
@ -266,6 +275,8 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c \
@ -287,11 +298,14 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c \
@ -1007,8 +1021,6 @@ if test "$PHP_GRPC" != "no"; then
third_party/upb/upb/decode_fast.c \ third_party/upb/upb/decode_fast.c \
third_party/upb/upb/def.c \ third_party/upb/upb/def.c \
third_party/upb/upb/encode.c \ third_party/upb/upb/encode.c \
third_party/upb/upb/json_decode.c \
third_party/upb/upb/json_encode.c \
third_party/upb/upb/msg.c \ third_party/upb/upb/msg.c \
third_party/upb/upb/reflection.c \ third_party/upb/upb/reflection.c \
third_party/upb/upb/table.c \ third_party/upb/upb/table.c \
@ -1055,12 +1067,16 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/server/secure) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/server/secure)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/transport) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/chttp2/transport)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/inproc) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/transport/inproc)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/admin/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/annotations) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/annotations)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/accesslog/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/accesslog/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/bootstrap/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/cluster/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/cluster/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/core/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/core/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/endpoint/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/endpoint/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/listener/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/listener/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/metrics/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/overload/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/rbac/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/rbac/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/route/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/route/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/trace/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/config/trace/v3)
@ -1076,6 +1092,7 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/listener/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/listener/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/load_stats/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/load_stats/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/route/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/route/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/service/status/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/type/matcher/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/type/matcher/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/type/metadata/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/type/metadata/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/type/tracing/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/envoy/type/tracing/v3)
@ -1092,12 +1109,16 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/udpa/type/v1) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/udpa/type/v1)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/validate) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/validate)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/xds/core/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/xds/core/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/admin/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/annotations) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/annotations)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/cluster/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/cluster/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/core/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/core/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/listener/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/listener/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/metrics/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/overload/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/route/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/route/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/trace/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/config/trace/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3)
@ -1112,6 +1133,7 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/listener/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/listener/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/route/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/route/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/service/status/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/type/matcher/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/type/matcher/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/type/metadata/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/type/metadata/v3)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/type/tracing/v3) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upbdefs-generated/envoy/type/tracing/v3)

@ -113,9 +113,11 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\transport\\chttp2\\transport\\writing.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\writing.cc " +
"src\\core\\ext\\transport\\inproc\\inproc_plugin.cc " + "src\\core\\ext\\transport\\inproc\\inproc_plugin.cc " +
"src\\core\\ext\\transport\\inproc\\inproc_transport.cc " + "src\\core\\ext\\transport\\inproc\\inproc_transport.cc " +
"src\\core\\ext\\upb-generated\\envoy\\admin\\v3\\config_dump.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\annotations\\deprecation.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\annotations\\deprecation.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\annotations\\resource.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\annotations\\resource.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\accesslog\\v3\\accesslog.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\accesslog\\v3\\accesslog.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\bootstrap\\v3\\bootstrap.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3\\circuit_breaker.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3\\circuit_breaker.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3\\cluster.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3\\cluster.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3\\filter.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3\\filter.upb.c " +
@ -140,6 +142,8 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3\\listener.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3\\listener.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3\\listener_components.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3\\listener_components.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3\\udp_listener_config.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3\\udp_listener_config.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\metrics\\v3\\stats.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\overload\\v3\\overload.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\rbac\\v3\\rbac.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\rbac\\v3\\rbac.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\route\\v3\\route.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\route\\v3\\route.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\config\\route\\v3\\route_components.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\config\\route\\v3\\route_components.upb.c " +
@ -162,11 +166,14 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upb-generated\\envoy\\service\\load_stats\\v3\\lrs.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\service\\load_stats\\v3\\lrs.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\service\\route\\v3\\rds.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\service\\route\\v3\\rds.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\service\\route\\v3\\srds.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\service\\route\\v3\\srds.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\service\\status\\v3\\csds.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\metadata.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\metadata.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\node.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\number.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\number.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\path.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\path.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\regex.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\regex.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\string.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\string.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\struct.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\value.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3\\value.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\metadata\\v3\\metadata.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\metadata\\v3\\metadata.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\tracing\\v3\\custom_tag.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\tracing\\v3\\custom_tag.upb.c " +
@ -205,9 +212,11 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upb-generated\\xds\\core\\v3\\resource.upb.c " + "src\\core\\ext\\upb-generated\\xds\\core\\v3\\resource.upb.c " +
"src\\core\\ext\\upb-generated\\xds\\core\\v3\\resource_locator.upb.c " + "src\\core\\ext\\upb-generated\\xds\\core\\v3\\resource_locator.upb.c " +
"src\\core\\ext\\upb-generated\\xds\\core\\v3\\resource_name.upb.c " + "src\\core\\ext\\upb-generated\\xds\\core\\v3\\resource_name.upb.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\admin\\v3\\config_dump.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\annotations\\deprecation.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\annotations\\deprecation.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\annotations\\resource.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\annotations\\resource.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\accesslog\\v3\\accesslog.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\accesslog\\v3\\accesslog.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\bootstrap\\v3\\bootstrap.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3\\circuit_breaker.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3\\circuit_breaker.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3\\cluster.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3\\cluster.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3\\filter.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3\\filter.upbdefs.c " +
@ -232,6 +241,8 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3\\listener.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3\\listener.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3\\listener_components.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3\\listener_components.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3\\udp_listener_config.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3\\udp_listener_config.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\metrics\\v3\\stats.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\overload\\v3\\overload.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3\\route.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3\\route.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3\\route_components.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3\\route_components.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3\\scoped_route.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3\\scoped_route.upbdefs.c " +
@ -253,11 +264,14 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upbdefs-generated\\envoy\\service\\load_stats\\v3\\lrs.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\service\\load_stats\\v3\\lrs.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\service\\route\\v3\\rds.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\service\\route\\v3\\rds.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\service\\route\\v3\\srds.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\service\\route\\v3\\srds.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\service\\status\\v3\\csds.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\metadata.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\metadata.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\node.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\number.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\number.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\path.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\path.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\regex.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\regex.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\string.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\string.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\struct.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\value.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3\\value.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\metadata\\v3\\metadata.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\metadata\\v3\\metadata.upbdefs.c " +
"src\\core\\ext\\upbdefs-generated\\envoy\\type\\tracing\\v3\\custom_tag.upbdefs.c " + "src\\core\\ext\\upbdefs-generated\\envoy\\type\\tracing\\v3\\custom_tag.upbdefs.c " +
@ -973,8 +987,6 @@ if (PHP_GRPC != "no") {
"third_party\\upb\\upb\\decode_fast.c " + "third_party\\upb\\upb\\decode_fast.c " +
"third_party\\upb\\upb\\def.c " + "third_party\\upb\\upb\\def.c " +
"third_party\\upb\\upb\\encode.c " + "third_party\\upb\\upb\\encode.c " +
"third_party\\upb\\upb\\json_decode.c " +
"third_party\\upb\\upb\\json_encode.c " +
"third_party\\upb\\upb\\msg.c " + "third_party\\upb\\upb\\msg.c " +
"third_party\\upb\\upb\\reflection.c " + "third_party\\upb\\upb\\reflection.c " +
"third_party\\upb\\upb\\table.c " + "third_party\\upb\\upb\\table.c " +
@ -1059,10 +1071,14 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\transport\\inproc"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\transport\\inproc");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\admin");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\admin\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\annotations"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\annotations");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\accesslog"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\accesslog");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\accesslog\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\accesslog\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\bootstrap");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\bootstrap\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\cluster"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\cluster");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\cluster\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\core"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\core");
@ -1071,6 +1087,10 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\endpoint\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\endpoint\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\listener"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\listener");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\listener\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\metrics");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\metrics\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\overload");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\overload\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\rbac"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\rbac");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\rbac\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\rbac\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\route"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\config\\route");
@ -1109,6 +1129,8 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\load_stats\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\load_stats\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\route"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\route");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\route\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\route\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\status");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\service\\status\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\type"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\type");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\type\\matcher"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\type\\matcher");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\envoy\\type\\matcher\\v3");
@ -1144,10 +1166,14 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\xds\\core\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\xds\\core\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\admin");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\admin\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\annotations"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\annotations");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\accesslog"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\accesslog");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\accesslog\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\accesslog\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\bootstrap");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\bootstrap\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\cluster\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\core"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\core");
@ -1156,6 +1182,10 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\endpoint\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\endpoint\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\listener\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\metrics");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\metrics\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\overload");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\overload\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\route"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\route");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\route\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\trace"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\config\\trace");
@ -1192,6 +1222,8 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\load_stats\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\load_stats\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\route"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\route");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\route\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\route\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\status");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\service\\status\\v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\type"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\type");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upbdefs-generated\\envoy\\type\\matcher\\v3");

@ -284,9 +284,11 @@ Pod::Spec.new do |s|
'src/core/ext/transport/chttp2/transport/stream_map.h', 'src/core/ext/transport/chttp2/transport/stream_map.h',
'src/core/ext/transport/chttp2/transport/varint.h', 'src/core/ext/transport/chttp2/transport/varint.h',
'src/core/ext/transport/inproc/inproc_transport.h', 'src/core/ext/transport/inproc/inproc_transport.h',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.h', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.h',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h',
@ -311,6 +313,8 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h', 'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h', 'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h',
@ -333,11 +337,14 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h', 'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h',
'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h', 'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h',
@ -376,9 +383,11 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/xds/core/v3/resource.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h',
@ -403,6 +412,8 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h',
@ -424,11 +435,14 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h',
@ -813,8 +827,6 @@ Pod::Spec.new do |s|
'third_party/upb/upb/def.h', 'third_party/upb/upb/def.h',
'third_party/upb/upb/def.hpp', 'third_party/upb/upb/def.hpp',
'third_party/upb/upb/encode.h', 'third_party/upb/upb/encode.h',
'third_party/upb/upb/json_decode.h',
'third_party/upb/upb/json_encode.h',
'third_party/upb/upb/msg.h', 'third_party/upb/upb/msg.h',
'third_party/upb/upb/port_def.inc', 'third_party/upb/upb/port_def.inc',
'third_party/upb/upb/port_undef.inc', 'third_party/upb/upb/port_undef.inc',
@ -910,9 +922,11 @@ Pod::Spec.new do |s|
'src/core/ext/transport/chttp2/transport/stream_map.h', 'src/core/ext/transport/chttp2/transport/stream_map.h',
'src/core/ext/transport/chttp2/transport/varint.h', 'src/core/ext/transport/chttp2/transport/varint.h',
'src/core/ext/transport/inproc/inproc_transport.h', 'src/core/ext/transport/inproc/inproc_transport.h',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.h', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.h',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h',
@ -937,6 +951,8 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h', 'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h', 'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h',
@ -959,11 +975,14 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h', 'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h',
'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h', 'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h',
@ -1002,9 +1021,11 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/xds/core/v3/resource.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h',
@ -1029,6 +1050,8 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h',
@ -1050,11 +1073,14 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h',
@ -1389,8 +1415,6 @@ Pod::Spec.new do |s|
'third_party/upb/upb/def.h', 'third_party/upb/upb/def.h',
'third_party/upb/upb/def.hpp', 'third_party/upb/upb/def.hpp',
'third_party/upb/upb/encode.h', 'third_party/upb/upb/encode.h',
'third_party/upb/upb/json_decode.h',
'third_party/upb/upb/json_encode.h',
'third_party/upb/upb/msg.h', 'third_party/upb/upb/msg.h',
'third_party/upb/upb/port_def.inc', 'third_party/upb/upb/port_def.inc',
'third_party/upb/upb/port_undef.inc', 'third_party/upb/upb/port_undef.inc',

@ -379,12 +379,16 @@ Pod::Spec.new do |s|
'src/core/ext/transport/inproc/inproc_plugin.cc', 'src/core/ext/transport/inproc/inproc_plugin.cc',
'src/core/ext/transport/inproc/inproc_transport.cc', 'src/core/ext/transport/inproc/inproc_transport.cc',
'src/core/ext/transport/inproc/inproc_transport.h', 'src/core/ext/transport/inproc/inproc_transport.h',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.c', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.c',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.h', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.h',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c',
@ -433,6 +437,10 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c', 'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c',
@ -477,8 +485,12 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c',
@ -487,6 +499,8 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h',
'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c', 'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c',
@ -563,12 +577,16 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c',
@ -617,6 +635,10 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c',
@ -659,8 +681,12 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c',
@ -669,6 +695,8 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c',
@ -1352,10 +1380,6 @@ Pod::Spec.new do |s|
'third_party/upb/upb/def.hpp', 'third_party/upb/upb/def.hpp',
'third_party/upb/upb/encode.c', 'third_party/upb/upb/encode.c',
'third_party/upb/upb/encode.h', 'third_party/upb/upb/encode.h',
'third_party/upb/upb/json_decode.c',
'third_party/upb/upb/json_decode.h',
'third_party/upb/upb/json_encode.c',
'third_party/upb/upb/json_encode.h',
'third_party/upb/upb/msg.c', 'third_party/upb/upb/msg.c',
'third_party/upb/upb/msg.h', 'third_party/upb/upb/msg.h',
'third_party/upb/upb/port_def.inc', 'third_party/upb/upb/port_def.inc',
@ -1455,9 +1479,11 @@ Pod::Spec.new do |s|
'src/core/ext/transport/chttp2/transport/stream_map.h', 'src/core/ext/transport/chttp2/transport/stream_map.h',
'src/core/ext/transport/chttp2/transport/varint.h', 'src/core/ext/transport/chttp2/transport/varint.h',
'src/core/ext/transport/inproc/inproc_transport.h', 'src/core/ext/transport/inproc/inproc_transport.h',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.h', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.h',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h',
'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h', 'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h',
@ -1482,6 +1508,8 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h', 'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h',
'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h', 'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h',
@ -1504,11 +1532,14 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h', 'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h',
'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h', 'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h',
'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h', 'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h',
@ -1547,9 +1578,11 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/xds/core/v3/resource.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h',
@ -1574,6 +1607,8 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h',
@ -1595,11 +1630,14 @@ Pod::Spec.new do |s|
'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h',
'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h', 'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h',
@ -1923,8 +1961,6 @@ Pod::Spec.new do |s|
'third_party/upb/upb/def.h', 'third_party/upb/upb/def.h',
'third_party/upb/upb/def.hpp', 'third_party/upb/upb/def.hpp',
'third_party/upb/upb/encode.h', 'third_party/upb/upb/encode.h',
'third_party/upb/upb/json_decode.h',
'third_party/upb/upb/json_encode.h',
'third_party/upb/upb/msg.h', 'third_party/upb/upb/msg.h',
'third_party/upb/upb/port_def.inc', 'third_party/upb/upb/port_def.inc',
'third_party/upb/upb/port_undef.inc', 'third_party/upb/upb/port_undef.inc',

@ -75,6 +75,7 @@ EXPORTS
grpc_resource_quota_unref grpc_resource_quota_unref
grpc_resource_quota_resize grpc_resource_quota_resize
grpc_resource_quota_set_max_threads grpc_resource_quota_set_max_threads
grpc_dump_xds_configs
grpc_resource_quota_arg_vtable grpc_resource_quota_arg_vtable
grpc_channelz_get_top_channels grpc_channelz_get_top_channels
grpc_channelz_get_servers grpc_channelz_get_servers

@ -295,12 +295,16 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/transport/inproc/inproc_plugin.cc ) s.files += %w( src/core/ext/transport/inproc/inproc_plugin.cc )
s.files += %w( src/core/ext/transport/inproc/inproc_transport.cc ) s.files += %w( src/core/ext/transport/inproc/inproc_transport.cc )
s.files += %w( src/core/ext/transport/inproc/inproc_transport.h ) s.files += %w( src/core/ext/transport/inproc/inproc_transport.h )
s.files += %w( src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/annotations/resource.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/annotations/resource.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/annotations/resource.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/annotations/resource.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c )
@ -349,6 +353,10 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c )
@ -393,8 +401,12 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c )
@ -403,6 +415,8 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c )
@ -479,12 +493,16 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h ) s.files += %w( src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h )
s.files += %w( src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c ) s.files += %w( src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c )
s.files += %w( src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h ) s.files += %w( src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c )
@ -533,6 +551,10 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c )
@ -575,8 +597,12 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c )
@ -585,6 +611,8 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h )
s.files += %w( src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c ) s.files += %w( src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c )
@ -2060,10 +2088,6 @@ Gem::Specification.new do |s|
s.files += %w( third_party/upb/upb/def.hpp ) s.files += %w( third_party/upb/upb/def.hpp )
s.files += %w( third_party/upb/upb/encode.c ) s.files += %w( third_party/upb/upb/encode.c )
s.files += %w( third_party/upb/upb/encode.h ) s.files += %w( third_party/upb/upb/encode.h )
s.files += %w( third_party/upb/upb/json_decode.c )
s.files += %w( third_party/upb/upb/json_decode.h )
s.files += %w( third_party/upb/upb/json_encode.c )
s.files += %w( third_party/upb/upb/json_encode.h )
s.files += %w( third_party/upb/upb/msg.c ) s.files += %w( third_party/upb/upb/msg.c )
s.files += %w( third_party/upb/upb/msg.h ) s.files += %w( third_party/upb/upb/msg.h )
s.files += %w( third_party/upb/upb/port_def.inc ) s.files += %w( third_party/upb/upb/port_def.inc )

@ -562,9 +562,11 @@
'src/core/ext/transport/chttp2/transport/writing.cc', 'src/core/ext/transport/chttp2/transport/writing.cc',
'src/core/ext/transport/inproc/inproc_plugin.cc', 'src/core/ext/transport/inproc/inproc_plugin.cc',
'src/core/ext/transport/inproc/inproc_transport.cc', 'src/core/ext/transport/inproc/inproc_transport.cc',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.c', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.c',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c',
@ -589,6 +591,8 @@
'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c',
'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c',
'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c', 'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c',
'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c', 'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c',
@ -611,11 +615,14 @@
'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c', 'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c',
'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c', 'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c',
'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c', 'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c',
'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c', 'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c',
@ -653,9 +660,11 @@
'src/core/ext/upb-generated/xds/core/v3/resource.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource.upb.c',
'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c',
@ -680,6 +689,8 @@
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c',
@ -701,11 +712,14 @@
'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c',
@ -1997,8 +2011,6 @@
'third_party/upb/upb/decode.c', 'third_party/upb/upb/decode.c',
'third_party/upb/upb/def.c', 'third_party/upb/upb/def.c',
'third_party/upb/upb/encode.c', 'third_party/upb/upb/encode.c',
'third_party/upb/upb/json_decode.c',
'third_party/upb/upb/json_encode.c',
'third_party/upb/upb/msg.c', 'third_party/upb/upb/msg.c',
'third_party/upb/upb/reflection.c', 'third_party/upb/upb/reflection.c',
'third_party/upb/upb/table.c', 'third_party/upb/upb/table.c',

@ -505,6 +505,10 @@ GRPCAPI void grpc_resource_quota_resize(grpc_resource_quota* resource_quota,
GRPCAPI void grpc_resource_quota_set_max_threads( GRPCAPI void grpc_resource_quota_set_max_threads(
grpc_resource_quota* resource_quota, int new_max_threads); grpc_resource_quota* resource_quota, int new_max_threads);
/** EXPERIMENTAL. Dumps xDS configs as a serialized ClientConfig proto.
The full name of the proto is envoy.service.status.v3.ClientConfig. */
GRPCAPI grpc_slice grpc_dump_xds_configs();
/** Fetch a vtable for a grpc_channel_arg that points to a grpc_resource_quota /** Fetch a vtable for a grpc_channel_arg that points to a grpc_resource_quota
*/ */
GRPCAPI const grpc_arg_pointer_vtable* grpc_resource_quota_arg_vtable(void); GRPCAPI const grpc_arg_pointer_vtable* grpc_resource_quota_arg_vtable(void);

@ -275,12 +275,16 @@
<file baseinstalldir="/" name="src/core/ext/transport/inproc/inproc_plugin.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/inproc/inproc_plugin.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/inproc/inproc_transport.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/inproc/inproc_transport.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/inproc/inproc_transport.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/inproc/inproc_transport.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/resource.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/resource.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/resource.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/annotations/resource.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c" role="src" />
@ -329,6 +333,10 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c" role="src" />
@ -373,8 +381,12 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c" role="src" />
@ -383,6 +395,8 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c" role="src" />
@ -459,12 +473,16 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c" role="src" />
@ -513,6 +531,10 @@
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c" role="src" />
@ -555,8 +577,12 @@
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c" role="src" />
@ -565,6 +591,8 @@
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c" role="src" />
@ -1985,10 +2013,6 @@
<file baseinstalldir="/" name="third_party/upb/upb/def.hpp" role="src" /> <file baseinstalldir="/" name="third_party/upb/upb/def.hpp" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/encode.c" role="src" /> <file baseinstalldir="/" name="third_party/upb/upb/encode.c" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/encode.h" role="src" /> <file baseinstalldir="/" name="third_party/upb/upb/encode.h" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/json_decode.c" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/json_decode.h" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/json_encode.c" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/json_encode.h" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/msg.c" role="src" /> <file baseinstalldir="/" name="third_party/upb/upb/msg.c" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/msg.h" role="src" /> <file baseinstalldir="/" name="third_party/upb/upb/msg.h" role="src" />
<file baseinstalldir="/" name="third_party/upb/upb/port_def.inc" role="src" /> <file baseinstalldir="/" name="third_party/upb/upb/port_def.inc" role="src" />

@ -0,0 +1,406 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/admin/v3/config_dump.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/admin/v3/config_dump.upb.h"
#include "envoy/config/bootstrap/v3/bootstrap.upb.h"
#include "google/protobuf/any.upb.h"
#include "google/protobuf/timestamp.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_admin_v3_ConfigDump_submsgs[1] = {
&google_protobuf_Any_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ConfigDump__fields[1] = {
{1, UPB_SIZE(0, 0), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_ConfigDump_msginit = {
&envoy_admin_v3_ConfigDump_submsgs[0],
&envoy_admin_v3_ConfigDump__fields[0],
UPB_SIZE(8, 8), 1, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_UpdateFailureState_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_UpdateFailureState__fields[4] = {
{1, UPB_SIZE(20, 40), 1, 0, 11, 1},
{2, UPB_SIZE(24, 48), 2, 1, 11, 1},
{3, UPB_SIZE(4, 8), 0, 0, 9, 1},
{4, UPB_SIZE(12, 24), 0, 0, 9, 1},
};
const upb_msglayout envoy_admin_v3_UpdateFailureState_msginit = {
&envoy_admin_v3_UpdateFailureState_submsgs[0],
&envoy_admin_v3_UpdateFailureState__fields[0],
UPB_SIZE(32, 64), 4, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_BootstrapConfigDump_submsgs[2] = {
&envoy_config_bootstrap_v3_Bootstrap_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_BootstrapConfigDump__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 2, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_BootstrapConfigDump_msginit = {
&envoy_admin_v3_BootstrapConfigDump_submsgs[0],
&envoy_admin_v3_BootstrapConfigDump__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ListenersConfigDump_submsgs[2] = {
&envoy_admin_v3_ListenersConfigDump_DynamicListener_msginit,
&envoy_admin_v3_ListenersConfigDump_StaticListener_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ListenersConfigDump__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), 0, 1, 11, 3},
{3, UPB_SIZE(12, 24), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_ListenersConfigDump_msginit = {
&envoy_admin_v3_ListenersConfigDump_submsgs[0],
&envoy_admin_v3_ListenersConfigDump__fields[0],
UPB_SIZE(16, 32), 3, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ListenersConfigDump_StaticListener_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ListenersConfigDump_StaticListener__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 2, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_ListenersConfigDump_StaticListener_msginit = {
&envoy_admin_v3_ListenersConfigDump_StaticListener_submsgs[0],
&envoy_admin_v3_ListenersConfigDump_StaticListener__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ListenersConfigDump_DynamicListenerState_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ListenersConfigDump_DynamicListenerState__fields[3] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 1, 0, 11, 1},
{3, UPB_SIZE(16, 32), 2, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_ListenersConfigDump_DynamicListenerState_msginit = {
&envoy_admin_v3_ListenersConfigDump_DynamicListenerState_submsgs[0],
&envoy_admin_v3_ListenersConfigDump_DynamicListenerState__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ListenersConfigDump_DynamicListener_submsgs[2] = {
&envoy_admin_v3_ListenersConfigDump_DynamicListenerState_msginit,
&envoy_admin_v3_UpdateFailureState_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ListenersConfigDump_DynamicListener__fields[6] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 24), 1, 0, 11, 1},
{3, UPB_SIZE(20, 32), 2, 0, 11, 1},
{4, UPB_SIZE(24, 40), 3, 0, 11, 1},
{5, UPB_SIZE(28, 48), 4, 1, 11, 1},
{6, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_admin_v3_ListenersConfigDump_DynamicListener_msginit = {
&envoy_admin_v3_ListenersConfigDump_DynamicListener_submsgs[0],
&envoy_admin_v3_ListenersConfigDump_DynamicListener__fields[0],
UPB_SIZE(32, 64), 6, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ClustersConfigDump_submsgs[2] = {
&envoy_admin_v3_ClustersConfigDump_DynamicCluster_msginit,
&envoy_admin_v3_ClustersConfigDump_StaticCluster_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ClustersConfigDump__fields[4] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), 0, 1, 11, 3},
{3, UPB_SIZE(12, 24), 0, 0, 11, 3},
{4, UPB_SIZE(16, 32), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_ClustersConfigDump_msginit = {
&envoy_admin_v3_ClustersConfigDump_submsgs[0],
&envoy_admin_v3_ClustersConfigDump__fields[0],
UPB_SIZE(24, 48), 4, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ClustersConfigDump_StaticCluster_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ClustersConfigDump_StaticCluster__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 2, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_ClustersConfigDump_StaticCluster_msginit = {
&envoy_admin_v3_ClustersConfigDump_StaticCluster_submsgs[0],
&envoy_admin_v3_ClustersConfigDump_StaticCluster__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ClustersConfigDump_DynamicCluster_submsgs[3] = {
&envoy_admin_v3_UpdateFailureState_msginit,
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ClustersConfigDump_DynamicCluster__fields[5] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 24), 1, 1, 11, 1},
{3, UPB_SIZE(20, 32), 2, 2, 11, 1},
{4, UPB_SIZE(24, 40), 3, 0, 11, 1},
{5, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_admin_v3_ClustersConfigDump_DynamicCluster_msginit = {
&envoy_admin_v3_ClustersConfigDump_DynamicCluster_submsgs[0],
&envoy_admin_v3_ClustersConfigDump_DynamicCluster__fields[0],
UPB_SIZE(32, 48), 5, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_RoutesConfigDump_submsgs[2] = {
&envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_msginit,
&envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_msginit,
};
static const upb_msglayout_field envoy_admin_v3_RoutesConfigDump__fields[2] = {
{2, UPB_SIZE(0, 0), 0, 1, 11, 3},
{3, UPB_SIZE(4, 8), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_RoutesConfigDump_msginit = {
&envoy_admin_v3_RoutesConfigDump_submsgs[0],
&envoy_admin_v3_RoutesConfigDump__fields[0],
UPB_SIZE(8, 16), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_RoutesConfigDump_StaticRouteConfig__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 2, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_msginit = {
&envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_submsgs[0],
&envoy_admin_v3_RoutesConfigDump_StaticRouteConfig__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_submsgs[3] = {
&envoy_admin_v3_UpdateFailureState_msginit,
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig__fields[5] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 24), 1, 1, 11, 1},
{3, UPB_SIZE(20, 32), 2, 2, 11, 1},
{4, UPB_SIZE(24, 40), 3, 0, 11, 1},
{5, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_msginit = {
&envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_submsgs[0],
&envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig__fields[0],
UPB_SIZE(32, 48), 5, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ScopedRoutesConfigDump_submsgs[2] = {
&envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_msginit,
&envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ScopedRoutesConfigDump__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 1, 11, 3},
{2, UPB_SIZE(4, 8), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_msginit = {
&envoy_admin_v3_ScopedRoutesConfigDump_submsgs[0],
&envoy_admin_v3_ScopedRoutesConfigDump__fields[0],
UPB_SIZE(8, 16), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs__fields[3] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 32), 0, 0, 11, 3},
{3, UPB_SIZE(12, 24), 1, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_msginit = {
&envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_submsgs[0],
&envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_submsgs[3] = {
&envoy_admin_v3_UpdateFailureState_msginit,
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs__fields[6] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 24), 0, 0, 9, 1},
{3, UPB_SIZE(32, 56), 0, 1, 11, 3},
{4, UPB_SIZE(24, 40), 1, 2, 11, 1},
{5, UPB_SIZE(28, 48), 2, 0, 11, 1},
{6, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_msginit = {
&envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_submsgs[0],
&envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs__fields[0],
UPB_SIZE(40, 64), 6, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_SecretsConfigDump_submsgs[2] = {
&envoy_admin_v3_SecretsConfigDump_DynamicSecret_msginit,
&envoy_admin_v3_SecretsConfigDump_StaticSecret_msginit,
};
static const upb_msglayout_field envoy_admin_v3_SecretsConfigDump__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 1, 11, 3},
{2, UPB_SIZE(4, 8), 0, 0, 11, 3},
{3, UPB_SIZE(8, 16), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_SecretsConfigDump_msginit = {
&envoy_admin_v3_SecretsConfigDump_submsgs[0],
&envoy_admin_v3_SecretsConfigDump__fields[0],
UPB_SIZE(16, 24), 3, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_SecretsConfigDump_DynamicSecret_submsgs[3] = {
&envoy_admin_v3_UpdateFailureState_msginit,
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_SecretsConfigDump_DynamicSecret__fields[6] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 24), 0, 0, 9, 1},
{3, UPB_SIZE(24, 40), 1, 2, 11, 1},
{4, UPB_SIZE(28, 48), 2, 1, 11, 1},
{5, UPB_SIZE(32, 56), 3, 0, 11, 1},
{6, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_admin_v3_SecretsConfigDump_DynamicSecret_msginit = {
&envoy_admin_v3_SecretsConfigDump_DynamicSecret_submsgs[0],
&envoy_admin_v3_SecretsConfigDump_DynamicSecret__fields[0],
UPB_SIZE(40, 64), 6, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_SecretsConfigDump_StaticSecret_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_SecretsConfigDump_StaticSecret__fields[3] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 1, 1, 11, 1},
{3, UPB_SIZE(16, 32), 2, 0, 11, 1},
};
const upb_msglayout envoy_admin_v3_SecretsConfigDump_StaticSecret_msginit = {
&envoy_admin_v3_SecretsConfigDump_StaticSecret_submsgs[0],
&envoy_admin_v3_SecretsConfigDump_StaticSecret__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_EndpointsConfigDump_submsgs[2] = {
&envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_msginit,
&envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_msginit,
};
static const upb_msglayout_field envoy_admin_v3_EndpointsConfigDump__fields[2] = {
{2, UPB_SIZE(0, 0), 0, 1, 11, 3},
{3, UPB_SIZE(4, 8), 0, 0, 11, 3},
};
const upb_msglayout envoy_admin_v3_EndpointsConfigDump_msginit = {
&envoy_admin_v3_EndpointsConfigDump_submsgs[0],
&envoy_admin_v3_EndpointsConfigDump__fields[0],
UPB_SIZE(8, 16), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 2, 1, 11, 1},
};
const upb_msglayout envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_msginit = {
&envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_submsgs[0],
&envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_submsgs[3] = {
&envoy_admin_v3_UpdateFailureState_msginit,
&google_protobuf_Any_msginit,
&google_protobuf_Timestamp_msginit,
};
static const upb_msglayout_field envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig__fields[5] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 24), 1, 1, 11, 1},
{3, UPB_SIZE(20, 32), 2, 2, 11, 1},
{4, UPB_SIZE(24, 40), 3, 0, 11, 1},
{5, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_msginit = {
&envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_submsgs[0],
&envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig__fields[0],
UPB_SIZE(32, 48), 5, false, 255,
};
#include "upb/port_undef.inc"

File diff suppressed because it is too large Load Diff

@ -0,0 +1,350 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/bootstrap/v3/bootstrap.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/config/bootstrap/v3/bootstrap.upb.h"
#include "envoy/config/cluster/v3/cluster.upb.h"
#include "envoy/config/core/v3/address.upb.h"
#include "envoy/config/core/v3/base.upb.h"
#include "envoy/config/core/v3/config_source.upb.h"
#include "envoy/config/core/v3/event_service_config.upb.h"
#include "envoy/config/core/v3/extension.upb.h"
#include "envoy/config/core/v3/socket_option.upb.h"
#include "envoy/config/listener/v3/listener.upb.h"
#include "envoy/config/metrics/v3/stats.upb.h"
#include "envoy/config/overload/v3/overload.upb.h"
#include "envoy/config/trace/v3/http_tracer.upb.h"
#include "envoy/extensions/transport_sockets/tls/v3/secret.upb.h"
#include "envoy/type/v3/percent.upb.h"
#include "google/protobuf/duration.upb.h"
#include "google/protobuf/struct.upb.h"
#include "google/protobuf/wrappers.upb.h"
#include "udpa/annotations/migrate.upb.h"
#include "udpa/annotations/security.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "validate/validate.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_config_bootstrap_v3_Bootstrap_submsgs[19] = {
&envoy_config_bootstrap_v3_Admin_msginit,
&envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_msginit,
&envoy_config_bootstrap_v3_Bootstrap_DynamicResources_msginit,
&envoy_config_bootstrap_v3_Bootstrap_StaticResources_msginit,
&envoy_config_bootstrap_v3_ClusterManager_msginit,
&envoy_config_bootstrap_v3_FatalAction_msginit,
&envoy_config_bootstrap_v3_LayeredRuntime_msginit,
&envoy_config_bootstrap_v3_Watchdog_msginit,
&envoy_config_bootstrap_v3_Watchdogs_msginit,
&envoy_config_core_v3_ApiConfigSource_msginit,
&envoy_config_core_v3_ConfigSource_msginit,
&envoy_config_core_v3_Node_msginit,
&envoy_config_core_v3_TypedExtensionConfig_msginit,
&envoy_config_metrics_v3_StatsConfig_msginit,
&envoy_config_metrics_v3_StatsSink_msginit,
&envoy_config_overload_v3_OverloadManager_msginit,
&envoy_config_trace_v3_Tracing_msginit,
&google_protobuf_Duration_msginit,
&google_protobuf_UInt64Value_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Bootstrap__fields[27] = {
{1, UPB_SIZE(28, 56), 1, 11, 11, 1},
{2, UPB_SIZE(32, 64), 2, 3, 11, 1},
{3, UPB_SIZE(36, 72), 3, 2, 11, 1},
{4, UPB_SIZE(40, 80), 4, 4, 11, 1},
{5, UPB_SIZE(4, 8), 0, 0, 9, 1},
{6, UPB_SIZE(88, 176), 0, 14, 11, 3},
{7, UPB_SIZE(44, 88), 5, 17, 11, 1},
{8, UPB_SIZE(48, 96), 6, 7, 11, 1},
{9, UPB_SIZE(52, 104), 7, 16, 11, 1},
{12, UPB_SIZE(56, 112), 8, 0, 11, 1},
{13, UPB_SIZE(60, 120), 9, 13, 11, 1},
{14, UPB_SIZE(64, 128), 10, 9, 11, 1},
{15, UPB_SIZE(68, 136), 11, 15, 11, 1},
{16, UPB_SIZE(2, 2), 0, 0, 8, 1},
{17, UPB_SIZE(72, 144), 12, 6, 11, 1},
{18, UPB_SIZE(12, 24), 0, 0, 9, 1},
{19, UPB_SIZE(76, 152), 13, 18, 11, 1},
{20, UPB_SIZE(3, 3), 0, 0, 8, 1},
{21, UPB_SIZE(92, 184), 0, 12, 11, 3},
{22, UPB_SIZE(96, 192), 0, 10, 11, 3},
{23, UPB_SIZE(80, 160), 14, 10, 11, 1},
{24, UPB_SIZE(20, 40), 0, 0, 9, 1},
{25, UPB_SIZE(100, 200), 0, 1, 11, _UPB_LABEL_MAP},
{26, UPB_SIZE(104, 208), 0, 0, 9, 3},
{27, UPB_SIZE(84, 168), 15, 8, 11, 1},
{28, UPB_SIZE(108, 216), 0, 5, 11, 3},
{29, UPB_SIZE(112, 224), UPB_SIZE(-117, -229), 0, 8, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_msginit = {
&envoy_config_bootstrap_v3_Bootstrap_submsgs[0],
&envoy_config_bootstrap_v3_Bootstrap__fields[0],
UPB_SIZE(120, 240), 27, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Bootstrap_StaticResources_submsgs[3] = {
&envoy_config_cluster_v3_Cluster_msginit,
&envoy_config_listener_v3_Listener_msginit,
&envoy_extensions_transport_sockets_tls_v3_Secret_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Bootstrap_StaticResources__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 1, 11, 3},
{2, UPB_SIZE(4, 8), 0, 0, 11, 3},
{3, UPB_SIZE(8, 16), 0, 2, 11, 3},
};
const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_StaticResources_msginit = {
&envoy_config_bootstrap_v3_Bootstrap_StaticResources_submsgs[0],
&envoy_config_bootstrap_v3_Bootstrap_StaticResources__fields[0],
UPB_SIZE(16, 24), 3, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Bootstrap_DynamicResources_submsgs[2] = {
&envoy_config_core_v3_ApiConfigSource_msginit,
&envoy_config_core_v3_ConfigSource_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Bootstrap_DynamicResources__fields[5] = {
{1, UPB_SIZE(20, 40), 1, 1, 11, 1},
{2, UPB_SIZE(24, 48), 2, 1, 11, 1},
{3, UPB_SIZE(28, 56), 3, 0, 11, 1},
{5, UPB_SIZE(4, 8), 0, 0, 9, 1},
{6, UPB_SIZE(12, 24), 0, 0, 9, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_DynamicResources_msginit = {
&envoy_config_bootstrap_v3_Bootstrap_DynamicResources_submsgs[0],
&envoy_config_bootstrap_v3_Bootstrap_DynamicResources__fields[0],
UPB_SIZE(32, 64), 5, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_submsgs[1] = {
&envoy_config_core_v3_TypedExtensionConfig_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), 0, 0, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_msginit = {
&envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_submsgs[0],
&envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry__fields[0],
UPB_SIZE(16, 32), 2, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Admin_submsgs[2] = {
&envoy_config_core_v3_Address_msginit,
&envoy_config_core_v3_SocketOption_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Admin__fields[4] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 0, 0, 9, 1},
{3, UPB_SIZE(20, 40), 1, 0, 11, 1},
{4, UPB_SIZE(24, 48), 0, 1, 11, 3},
};
const upb_msglayout envoy_config_bootstrap_v3_Admin_msginit = {
&envoy_config_bootstrap_v3_Admin_submsgs[0],
&envoy_config_bootstrap_v3_Admin__fields[0],
UPB_SIZE(32, 64), 4, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_ClusterManager_submsgs[3] = {
&envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_msginit,
&envoy_config_core_v3_ApiConfigSource_msginit,
&envoy_config_core_v3_BindConfig_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_ClusterManager__fields[4] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 1, 0, 11, 1},
{3, UPB_SIZE(16, 32), 2, 2, 11, 1},
{4, UPB_SIZE(20, 40), 3, 1, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_ClusterManager_msginit = {
&envoy_config_bootstrap_v3_ClusterManager_submsgs[0],
&envoy_config_bootstrap_v3_ClusterManager__fields[0],
UPB_SIZE(24, 48), 4, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_submsgs[1] = {
&envoy_config_core_v3_EventServiceConfig_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_ClusterManager_OutlierDetection__fields[2] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 1, 0, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_msginit = {
&envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_submsgs[0],
&envoy_config_bootstrap_v3_ClusterManager_OutlierDetection__fields[0],
UPB_SIZE(16, 32), 2, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Watchdogs_submsgs[1] = {
&envoy_config_bootstrap_v3_Watchdog_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Watchdogs__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 2, 0, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_Watchdogs_msginit = {
&envoy_config_bootstrap_v3_Watchdogs_submsgs[0],
&envoy_config_bootstrap_v3_Watchdogs__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Watchdog_submsgs[3] = {
&envoy_config_bootstrap_v3_Watchdog_WatchdogAction_msginit,
&envoy_type_v3_Percent_msginit,
&google_protobuf_Duration_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Watchdog__fields[7] = {
{1, UPB_SIZE(4, 8), 1, 2, 11, 1},
{2, UPB_SIZE(8, 16), 2, 2, 11, 1},
{3, UPB_SIZE(12, 24), 3, 2, 11, 1},
{4, UPB_SIZE(16, 32), 4, 2, 11, 1},
{5, UPB_SIZE(20, 40), 5, 1, 11, 1},
{6, UPB_SIZE(24, 48), 6, 2, 11, 1},
{7, UPB_SIZE(28, 56), 0, 0, 11, 3},
};
const upb_msglayout envoy_config_bootstrap_v3_Watchdog_msginit = {
&envoy_config_bootstrap_v3_Watchdog_submsgs[0],
&envoy_config_bootstrap_v3_Watchdog__fields[0],
UPB_SIZE(32, 64), 7, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Watchdog_WatchdogAction_submsgs[1] = {
&envoy_config_core_v3_TypedExtensionConfig_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Watchdog_WatchdogAction__fields[2] = {
{1, UPB_SIZE(8, 8), 1, 0, 11, 1},
{2, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_Watchdog_WatchdogAction_msginit = {
&envoy_config_bootstrap_v3_Watchdog_WatchdogAction_submsgs[0],
&envoy_config_bootstrap_v3_Watchdog_WatchdogAction__fields[0],
UPB_SIZE(16, 16), 2, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_FatalAction_submsgs[1] = {
&envoy_config_core_v3_TypedExtensionConfig_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_FatalAction__fields[1] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_FatalAction_msginit = {
&envoy_config_bootstrap_v3_FatalAction_submsgs[0],
&envoy_config_bootstrap_v3_FatalAction__fields[0],
UPB_SIZE(8, 16), 1, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_Runtime_submsgs[1] = {
&google_protobuf_Struct_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_Runtime__fields[4] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 0, 0, 9, 1},
{3, UPB_SIZE(20, 40), 0, 0, 9, 1},
{4, UPB_SIZE(28, 56), 1, 0, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_Runtime_msginit = {
&envoy_config_bootstrap_v3_Runtime_submsgs[0],
&envoy_config_bootstrap_v3_Runtime__fields[0],
UPB_SIZE(32, 64), 4, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_RuntimeLayer_submsgs[4] = {
&envoy_config_bootstrap_v3_RuntimeLayer_AdminLayer_msginit,
&envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer_msginit,
&envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_msginit,
&google_protobuf_Struct_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_RuntimeLayer__fields[5] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 3, 11, 1},
{3, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 1, 11, 1},
{4, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 0, 11, 1},
{5, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 2, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_msginit = {
&envoy_config_bootstrap_v3_RuntimeLayer_submsgs[0],
&envoy_config_bootstrap_v3_RuntimeLayer__fields[0],
UPB_SIZE(16, 32), 5, false, 255,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer__fields[3] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(0, 0), 0, 0, 8, 1},
{3, UPB_SIZE(12, 24), 0, 0, 9, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer_msginit = {
NULL,
&envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_AdminLayer_msginit = {
NULL,
NULL,
UPB_SIZE(0, 0), 0, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_submsgs[1] = {
&envoy_config_core_v3_ConfigSource_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer__fields[2] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), 1, 0, 11, 1},
};
const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_msginit = {
&envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_submsgs[0],
&envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer__fields[0],
UPB_SIZE(16, 32), 2, false, 255,
};
static const upb_msglayout *const envoy_config_bootstrap_v3_LayeredRuntime_submsgs[1] = {
&envoy_config_bootstrap_v3_RuntimeLayer_msginit,
};
static const upb_msglayout_field envoy_config_bootstrap_v3_LayeredRuntime__fields[1] = {
{1, UPB_SIZE(0, 0), 0, 0, 11, 3},
};
const upb_msglayout envoy_config_bootstrap_v3_LayeredRuntime_msginit = {
&envoy_config_bootstrap_v3_LayeredRuntime_submsgs[0],
&envoy_config_bootstrap_v3_LayeredRuntime__fields[0],
UPB_SIZE(8, 8), 1, false, 255,
};
#include "upb/port_undef.inc"

@ -0,0 +1,144 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/metrics/v3/stats.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/config/metrics/v3/stats.upb.h"
#include "envoy/config/core/v3/address.upb.h"
#include "envoy/type/matcher/v3/string.upb.h"
#include "google/protobuf/any.upb.h"
#include "google/protobuf/wrappers.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "validate/validate.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_config_metrics_v3_StatsSink_submsgs[1] = {
&google_protobuf_Any_msginit,
};
static const upb_msglayout_field envoy_config_metrics_v3_StatsSink__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{3, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 0, 11, 1},
};
const upb_msglayout envoy_config_metrics_v3_StatsSink_msginit = {
&envoy_config_metrics_v3_StatsSink_submsgs[0],
&envoy_config_metrics_v3_StatsSink__fields[0],
UPB_SIZE(16, 32), 2, false, 255,
};
static const upb_msglayout *const envoy_config_metrics_v3_StatsConfig_submsgs[4] = {
&envoy_config_metrics_v3_HistogramBucketSettings_msginit,
&envoy_config_metrics_v3_StatsMatcher_msginit,
&envoy_config_metrics_v3_TagSpecifier_msginit,
&google_protobuf_BoolValue_msginit,
};
static const upb_msglayout_field envoy_config_metrics_v3_StatsConfig__fields[4] = {
{1, UPB_SIZE(12, 24), 0, 2, 11, 3},
{2, UPB_SIZE(4, 8), 1, 3, 11, 1},
{3, UPB_SIZE(8, 16), 2, 1, 11, 1},
{4, UPB_SIZE(16, 32), 0, 0, 11, 3},
};
const upb_msglayout envoy_config_metrics_v3_StatsConfig_msginit = {
&envoy_config_metrics_v3_StatsConfig_submsgs[0],
&envoy_config_metrics_v3_StatsConfig__fields[0],
UPB_SIZE(24, 40), 4, false, 255,
};
static const upb_msglayout *const envoy_config_metrics_v3_StatsMatcher_submsgs[1] = {
&envoy_type_matcher_v3_ListStringMatcher_msginit,
};
static const upb_msglayout_field envoy_config_metrics_v3_StatsMatcher__fields[3] = {
{1, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 8, 1},
{2, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
{3, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
};
const upb_msglayout envoy_config_metrics_v3_StatsMatcher_msginit = {
&envoy_config_metrics_v3_StatsMatcher_submsgs[0],
&envoy_config_metrics_v3_StatsMatcher__fields[0],
UPB_SIZE(8, 16), 3, false, 255,
};
static const upb_msglayout_field envoy_config_metrics_v3_TagSpecifier__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), UPB_SIZE(-17, -33), 0, 9, 1},
{3, UPB_SIZE(8, 16), UPB_SIZE(-17, -33), 0, 9, 1},
};
const upb_msglayout envoy_config_metrics_v3_TagSpecifier_msginit = {
NULL,
&envoy_config_metrics_v3_TagSpecifier__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout *const envoy_config_metrics_v3_HistogramBucketSettings_submsgs[1] = {
&envoy_type_matcher_v3_StringMatcher_msginit,
};
static const upb_msglayout_field envoy_config_metrics_v3_HistogramBucketSettings__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 0, 0, 1, _UPB_LABEL_PACKED},
};
const upb_msglayout envoy_config_metrics_v3_HistogramBucketSettings_msginit = {
&envoy_config_metrics_v3_HistogramBucketSettings_submsgs[0],
&envoy_config_metrics_v3_HistogramBucketSettings__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_config_metrics_v3_StatsdSink_submsgs[1] = {
&envoy_config_core_v3_Address_msginit,
};
static const upb_msglayout_field envoy_config_metrics_v3_StatsdSink__fields[3] = {
{1, UPB_SIZE(8, 16), UPB_SIZE(-17, -33), 0, 11, 1},
{2, UPB_SIZE(8, 16), UPB_SIZE(-17, -33), 0, 9, 1},
{3, UPB_SIZE(0, 0), 0, 0, 9, 1},
};
const upb_msglayout envoy_config_metrics_v3_StatsdSink_msginit = {
&envoy_config_metrics_v3_StatsdSink_submsgs[0],
&envoy_config_metrics_v3_StatsdSink__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout *const envoy_config_metrics_v3_DogStatsdSink_submsgs[2] = {
&envoy_config_core_v3_Address_msginit,
&google_protobuf_UInt64Value_msginit,
};
static const upb_msglayout_field envoy_config_metrics_v3_DogStatsdSink__fields[3] = {
{1, UPB_SIZE(16, 32), UPB_SIZE(-21, -41), 0, 11, 1},
{3, UPB_SIZE(4, 8), 0, 0, 9, 1},
{4, UPB_SIZE(12, 24), 1, 1, 11, 1},
};
const upb_msglayout envoy_config_metrics_v3_DogStatsdSink_msginit = {
&envoy_config_metrics_v3_DogStatsdSink_submsgs[0],
&envoy_config_metrics_v3_DogStatsdSink__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout_field envoy_config_metrics_v3_HystrixSink__fields[1] = {
{1, UPB_SIZE(0, 0), 0, 0, 3, 1},
};
const upb_msglayout envoy_config_metrics_v3_HystrixSink_msginit = {
NULL,
&envoy_config_metrics_v3_HystrixSink__fields[0],
UPB_SIZE(8, 8), 1, false, 255,
};
#include "upb/port_undef.inc"

@ -0,0 +1,488 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/metrics/v3/stats.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_CONFIG_METRICS_V3_STATS_PROTO_UPB_H_
#define ENVOY_CONFIG_METRICS_V3_STATS_PROTO_UPB_H_
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/decode_fast.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_config_metrics_v3_StatsSink;
struct envoy_config_metrics_v3_StatsConfig;
struct envoy_config_metrics_v3_StatsMatcher;
struct envoy_config_metrics_v3_TagSpecifier;
struct envoy_config_metrics_v3_HistogramBucketSettings;
struct envoy_config_metrics_v3_StatsdSink;
struct envoy_config_metrics_v3_DogStatsdSink;
struct envoy_config_metrics_v3_HystrixSink;
typedef struct envoy_config_metrics_v3_StatsSink envoy_config_metrics_v3_StatsSink;
typedef struct envoy_config_metrics_v3_StatsConfig envoy_config_metrics_v3_StatsConfig;
typedef struct envoy_config_metrics_v3_StatsMatcher envoy_config_metrics_v3_StatsMatcher;
typedef struct envoy_config_metrics_v3_TagSpecifier envoy_config_metrics_v3_TagSpecifier;
typedef struct envoy_config_metrics_v3_HistogramBucketSettings envoy_config_metrics_v3_HistogramBucketSettings;
typedef struct envoy_config_metrics_v3_StatsdSink envoy_config_metrics_v3_StatsdSink;
typedef struct envoy_config_metrics_v3_DogStatsdSink envoy_config_metrics_v3_DogStatsdSink;
typedef struct envoy_config_metrics_v3_HystrixSink envoy_config_metrics_v3_HystrixSink;
extern const upb_msglayout envoy_config_metrics_v3_StatsSink_msginit;
extern const upb_msglayout envoy_config_metrics_v3_StatsConfig_msginit;
extern const upb_msglayout envoy_config_metrics_v3_StatsMatcher_msginit;
extern const upb_msglayout envoy_config_metrics_v3_TagSpecifier_msginit;
extern const upb_msglayout envoy_config_metrics_v3_HistogramBucketSettings_msginit;
extern const upb_msglayout envoy_config_metrics_v3_StatsdSink_msginit;
extern const upb_msglayout envoy_config_metrics_v3_DogStatsdSink_msginit;
extern const upb_msglayout envoy_config_metrics_v3_HystrixSink_msginit;
struct envoy_config_core_v3_Address;
struct envoy_type_matcher_v3_ListStringMatcher;
struct envoy_type_matcher_v3_StringMatcher;
struct google_protobuf_Any;
struct google_protobuf_BoolValue;
struct google_protobuf_UInt64Value;
extern const upb_msglayout envoy_config_core_v3_Address_msginit;
extern const upb_msglayout envoy_type_matcher_v3_ListStringMatcher_msginit;
extern const upb_msglayout envoy_type_matcher_v3_StringMatcher_msginit;
extern const upb_msglayout google_protobuf_Any_msginit;
extern const upb_msglayout google_protobuf_BoolValue_msginit;
extern const upb_msglayout google_protobuf_UInt64Value_msginit;
/* envoy.config.metrics.v3.StatsSink */
UPB_INLINE envoy_config_metrics_v3_StatsSink *envoy_config_metrics_v3_StatsSink_new(upb_arena *arena) {
return (envoy_config_metrics_v3_StatsSink *)_upb_msg_new(&envoy_config_metrics_v3_StatsSink_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_StatsSink *envoy_config_metrics_v3_StatsSink_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_StatsSink *ret = envoy_config_metrics_v3_StatsSink_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsSink_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_StatsSink *envoy_config_metrics_v3_StatsSink_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_StatsSink *ret = envoy_config_metrics_v3_StatsSink_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsSink_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_StatsSink_serialize(const envoy_config_metrics_v3_StatsSink *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_StatsSink_msginit, arena, len);
}
typedef enum {
envoy_config_metrics_v3_StatsSink_config_type_typed_config = 3,
envoy_config_metrics_v3_StatsSink_config_type_NOT_SET = 0
} envoy_config_metrics_v3_StatsSink_config_type_oneofcases;
UPB_INLINE envoy_config_metrics_v3_StatsSink_config_type_oneofcases envoy_config_metrics_v3_StatsSink_config_type_case(const envoy_config_metrics_v3_StatsSink* msg) { return (envoy_config_metrics_v3_StatsSink_config_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
UPB_INLINE upb_strview envoy_config_metrics_v3_StatsSink_name(const envoy_config_metrics_v3_StatsSink *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
UPB_INLINE bool envoy_config_metrics_v3_StatsSink_has_typed_config(const envoy_config_metrics_v3_StatsSink *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
UPB_INLINE const struct google_protobuf_Any* envoy_config_metrics_v3_StatsSink_typed_config(const envoy_config_metrics_v3_StatsSink *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
UPB_INLINE void envoy_config_metrics_v3_StatsSink_set_name(envoy_config_metrics_v3_StatsSink *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
}
UPB_INLINE void envoy_config_metrics_v3_StatsSink_set_typed_config(envoy_config_metrics_v3_StatsSink *msg, struct google_protobuf_Any* value) {
UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
}
UPB_INLINE struct google_protobuf_Any* envoy_config_metrics_v3_StatsSink_mutable_typed_config(envoy_config_metrics_v3_StatsSink *msg, upb_arena *arena) {
struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_metrics_v3_StatsSink_typed_config(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_StatsSink_set_typed_config(msg, sub);
}
return sub;
}
/* envoy.config.metrics.v3.StatsConfig */
UPB_INLINE envoy_config_metrics_v3_StatsConfig *envoy_config_metrics_v3_StatsConfig_new(upb_arena *arena) {
return (envoy_config_metrics_v3_StatsConfig *)_upb_msg_new(&envoy_config_metrics_v3_StatsConfig_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_StatsConfig *envoy_config_metrics_v3_StatsConfig_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_StatsConfig *ret = envoy_config_metrics_v3_StatsConfig_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsConfig_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_StatsConfig *envoy_config_metrics_v3_StatsConfig_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_StatsConfig *ret = envoy_config_metrics_v3_StatsConfig_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsConfig_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_StatsConfig_serialize(const envoy_config_metrics_v3_StatsConfig *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_StatsConfig_msginit, arena, len);
}
UPB_INLINE bool envoy_config_metrics_v3_StatsConfig_has_stats_tags(const envoy_config_metrics_v3_StatsConfig *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(12, 24)); }
UPB_INLINE const envoy_config_metrics_v3_TagSpecifier* const* envoy_config_metrics_v3_StatsConfig_stats_tags(const envoy_config_metrics_v3_StatsConfig *msg, size_t *len) { return (const envoy_config_metrics_v3_TagSpecifier* const*)_upb_array_accessor(msg, UPB_SIZE(12, 24), len); }
UPB_INLINE bool envoy_config_metrics_v3_StatsConfig_has_use_all_default_tags(const envoy_config_metrics_v3_StatsConfig *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_metrics_v3_StatsConfig_use_all_default_tags(const envoy_config_metrics_v3_StatsConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_BoolValue*); }
UPB_INLINE bool envoy_config_metrics_v3_StatsConfig_has_stats_matcher(const envoy_config_metrics_v3_StatsConfig *msg) { return _upb_hasbit(msg, 2); }
UPB_INLINE const envoy_config_metrics_v3_StatsMatcher* envoy_config_metrics_v3_StatsConfig_stats_matcher(const envoy_config_metrics_v3_StatsConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const envoy_config_metrics_v3_StatsMatcher*); }
UPB_INLINE bool envoy_config_metrics_v3_StatsConfig_has_histogram_bucket_settings(const envoy_config_metrics_v3_StatsConfig *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
UPB_INLINE const envoy_config_metrics_v3_HistogramBucketSettings* const* envoy_config_metrics_v3_StatsConfig_histogram_bucket_settings(const envoy_config_metrics_v3_StatsConfig *msg, size_t *len) { return (const envoy_config_metrics_v3_HistogramBucketSettings* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
UPB_INLINE envoy_config_metrics_v3_TagSpecifier** envoy_config_metrics_v3_StatsConfig_mutable_stats_tags(envoy_config_metrics_v3_StatsConfig *msg, size_t *len) {
return (envoy_config_metrics_v3_TagSpecifier**)_upb_array_mutable_accessor(msg, UPB_SIZE(12, 24), len);
}
UPB_INLINE envoy_config_metrics_v3_TagSpecifier** envoy_config_metrics_v3_StatsConfig_resize_stats_tags(envoy_config_metrics_v3_StatsConfig *msg, size_t len, upb_arena *arena) {
return (envoy_config_metrics_v3_TagSpecifier**)_upb_array_resize_accessor2(msg, UPB_SIZE(12, 24), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_config_metrics_v3_TagSpecifier* envoy_config_metrics_v3_StatsConfig_add_stats_tags(envoy_config_metrics_v3_StatsConfig *msg, upb_arena *arena) {
struct envoy_config_metrics_v3_TagSpecifier* sub = (struct envoy_config_metrics_v3_TagSpecifier*)_upb_msg_new(&envoy_config_metrics_v3_TagSpecifier_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(12, 24), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
UPB_INLINE void envoy_config_metrics_v3_StatsConfig_set_use_all_default_tags(envoy_config_metrics_v3_StatsConfig *msg, struct google_protobuf_BoolValue* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_BoolValue*) = value;
}
UPB_INLINE struct google_protobuf_BoolValue* envoy_config_metrics_v3_StatsConfig_mutable_use_all_default_tags(envoy_config_metrics_v3_StatsConfig *msg, upb_arena *arena) {
struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_metrics_v3_StatsConfig_use_all_default_tags(msg);
if (sub == NULL) {
sub = (struct google_protobuf_BoolValue*)_upb_msg_new(&google_protobuf_BoolValue_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_StatsConfig_set_use_all_default_tags(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_config_metrics_v3_StatsConfig_set_stats_matcher(envoy_config_metrics_v3_StatsConfig *msg, envoy_config_metrics_v3_StatsMatcher* value) {
_upb_sethas(msg, 2);
*UPB_PTR_AT(msg, UPB_SIZE(8, 16), envoy_config_metrics_v3_StatsMatcher*) = value;
}
UPB_INLINE struct envoy_config_metrics_v3_StatsMatcher* envoy_config_metrics_v3_StatsConfig_mutable_stats_matcher(envoy_config_metrics_v3_StatsConfig *msg, upb_arena *arena) {
struct envoy_config_metrics_v3_StatsMatcher* sub = (struct envoy_config_metrics_v3_StatsMatcher*)envoy_config_metrics_v3_StatsConfig_stats_matcher(msg);
if (sub == NULL) {
sub = (struct envoy_config_metrics_v3_StatsMatcher*)_upb_msg_new(&envoy_config_metrics_v3_StatsMatcher_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_StatsConfig_set_stats_matcher(msg, sub);
}
return sub;
}
UPB_INLINE envoy_config_metrics_v3_HistogramBucketSettings** envoy_config_metrics_v3_StatsConfig_mutable_histogram_bucket_settings(envoy_config_metrics_v3_StatsConfig *msg, size_t *len) {
return (envoy_config_metrics_v3_HistogramBucketSettings**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
}
UPB_INLINE envoy_config_metrics_v3_HistogramBucketSettings** envoy_config_metrics_v3_StatsConfig_resize_histogram_bucket_settings(envoy_config_metrics_v3_StatsConfig *msg, size_t len, upb_arena *arena) {
return (envoy_config_metrics_v3_HistogramBucketSettings**)_upb_array_resize_accessor2(msg, UPB_SIZE(16, 32), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_config_metrics_v3_HistogramBucketSettings* envoy_config_metrics_v3_StatsConfig_add_histogram_bucket_settings(envoy_config_metrics_v3_StatsConfig *msg, upb_arena *arena) {
struct envoy_config_metrics_v3_HistogramBucketSettings* sub = (struct envoy_config_metrics_v3_HistogramBucketSettings*)_upb_msg_new(&envoy_config_metrics_v3_HistogramBucketSettings_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(16, 32), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
/* envoy.config.metrics.v3.StatsMatcher */
UPB_INLINE envoy_config_metrics_v3_StatsMatcher *envoy_config_metrics_v3_StatsMatcher_new(upb_arena *arena) {
return (envoy_config_metrics_v3_StatsMatcher *)_upb_msg_new(&envoy_config_metrics_v3_StatsMatcher_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_StatsMatcher *envoy_config_metrics_v3_StatsMatcher_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_StatsMatcher *ret = envoy_config_metrics_v3_StatsMatcher_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsMatcher_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_StatsMatcher *envoy_config_metrics_v3_StatsMatcher_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_StatsMatcher *ret = envoy_config_metrics_v3_StatsMatcher_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsMatcher_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_StatsMatcher_serialize(const envoy_config_metrics_v3_StatsMatcher *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_StatsMatcher_msginit, arena, len);
}
typedef enum {
envoy_config_metrics_v3_StatsMatcher_stats_matcher_reject_all = 1,
envoy_config_metrics_v3_StatsMatcher_stats_matcher_exclusion_list = 2,
envoy_config_metrics_v3_StatsMatcher_stats_matcher_inclusion_list = 3,
envoy_config_metrics_v3_StatsMatcher_stats_matcher_NOT_SET = 0
} envoy_config_metrics_v3_StatsMatcher_stats_matcher_oneofcases;
UPB_INLINE envoy_config_metrics_v3_StatsMatcher_stats_matcher_oneofcases envoy_config_metrics_v3_StatsMatcher_stats_matcher_case(const envoy_config_metrics_v3_StatsMatcher* msg) { return (envoy_config_metrics_v3_StatsMatcher_stats_matcher_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
UPB_INLINE bool envoy_config_metrics_v3_StatsMatcher_has_reject_all(const envoy_config_metrics_v3_StatsMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
UPB_INLINE bool envoy_config_metrics_v3_StatsMatcher_reject_all(const envoy_config_metrics_v3_StatsMatcher *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, false); }
UPB_INLINE bool envoy_config_metrics_v3_StatsMatcher_has_exclusion_list(const envoy_config_metrics_v3_StatsMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
UPB_INLINE const struct envoy_type_matcher_v3_ListStringMatcher* envoy_config_metrics_v3_StatsMatcher_exclusion_list(const envoy_config_metrics_v3_StatsMatcher *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_ListStringMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
UPB_INLINE bool envoy_config_metrics_v3_StatsMatcher_has_inclusion_list(const envoy_config_metrics_v3_StatsMatcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 3; }
UPB_INLINE const struct envoy_type_matcher_v3_ListStringMatcher* envoy_config_metrics_v3_StatsMatcher_inclusion_list(const envoy_config_metrics_v3_StatsMatcher *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_matcher_v3_ListStringMatcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 3, NULL); }
UPB_INLINE void envoy_config_metrics_v3_StatsMatcher_set_reject_all(envoy_config_metrics_v3_StatsMatcher *msg, bool value) {
UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
}
UPB_INLINE void envoy_config_metrics_v3_StatsMatcher_set_exclusion_list(envoy_config_metrics_v3_StatsMatcher *msg, struct envoy_type_matcher_v3_ListStringMatcher* value) {
UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_ListStringMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
}
UPB_INLINE struct envoy_type_matcher_v3_ListStringMatcher* envoy_config_metrics_v3_StatsMatcher_mutable_exclusion_list(envoy_config_metrics_v3_StatsMatcher *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_ListStringMatcher* sub = (struct envoy_type_matcher_v3_ListStringMatcher*)envoy_config_metrics_v3_StatsMatcher_exclusion_list(msg);
if (sub == NULL) {
sub = (struct envoy_type_matcher_v3_ListStringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_ListStringMatcher_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_StatsMatcher_set_exclusion_list(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_config_metrics_v3_StatsMatcher_set_inclusion_list(envoy_config_metrics_v3_StatsMatcher *msg, struct envoy_type_matcher_v3_ListStringMatcher* value) {
UPB_WRITE_ONEOF(msg, struct envoy_type_matcher_v3_ListStringMatcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 3);
}
UPB_INLINE struct envoy_type_matcher_v3_ListStringMatcher* envoy_config_metrics_v3_StatsMatcher_mutable_inclusion_list(envoy_config_metrics_v3_StatsMatcher *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_ListStringMatcher* sub = (struct envoy_type_matcher_v3_ListStringMatcher*)envoy_config_metrics_v3_StatsMatcher_inclusion_list(msg);
if (sub == NULL) {
sub = (struct envoy_type_matcher_v3_ListStringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_ListStringMatcher_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_StatsMatcher_set_inclusion_list(msg, sub);
}
return sub;
}
/* envoy.config.metrics.v3.TagSpecifier */
UPB_INLINE envoy_config_metrics_v3_TagSpecifier *envoy_config_metrics_v3_TagSpecifier_new(upb_arena *arena) {
return (envoy_config_metrics_v3_TagSpecifier *)_upb_msg_new(&envoy_config_metrics_v3_TagSpecifier_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_TagSpecifier *envoy_config_metrics_v3_TagSpecifier_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_TagSpecifier *ret = envoy_config_metrics_v3_TagSpecifier_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_TagSpecifier_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_TagSpecifier *envoy_config_metrics_v3_TagSpecifier_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_TagSpecifier *ret = envoy_config_metrics_v3_TagSpecifier_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_TagSpecifier_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_TagSpecifier_serialize(const envoy_config_metrics_v3_TagSpecifier *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_TagSpecifier_msginit, arena, len);
}
typedef enum {
envoy_config_metrics_v3_TagSpecifier_tag_value_regex = 2,
envoy_config_metrics_v3_TagSpecifier_tag_value_fixed_value = 3,
envoy_config_metrics_v3_TagSpecifier_tag_value_NOT_SET = 0
} envoy_config_metrics_v3_TagSpecifier_tag_value_oneofcases;
UPB_INLINE envoy_config_metrics_v3_TagSpecifier_tag_value_oneofcases envoy_config_metrics_v3_TagSpecifier_tag_value_case(const envoy_config_metrics_v3_TagSpecifier* msg) { return (envoy_config_metrics_v3_TagSpecifier_tag_value_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(16, 32), int32_t); }
UPB_INLINE upb_strview envoy_config_metrics_v3_TagSpecifier_tag_name(const envoy_config_metrics_v3_TagSpecifier *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
UPB_INLINE bool envoy_config_metrics_v3_TagSpecifier_has_regex(const envoy_config_metrics_v3_TagSpecifier *msg) { return _upb_getoneofcase(msg, UPB_SIZE(16, 32)) == 2; }
UPB_INLINE upb_strview envoy_config_metrics_v3_TagSpecifier_regex(const envoy_config_metrics_v3_TagSpecifier *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(8, 16), UPB_SIZE(16, 32), 2, upb_strview_make("", strlen(""))); }
UPB_INLINE bool envoy_config_metrics_v3_TagSpecifier_has_fixed_value(const envoy_config_metrics_v3_TagSpecifier *msg) { return _upb_getoneofcase(msg, UPB_SIZE(16, 32)) == 3; }
UPB_INLINE upb_strview envoy_config_metrics_v3_TagSpecifier_fixed_value(const envoy_config_metrics_v3_TagSpecifier *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(8, 16), UPB_SIZE(16, 32), 3, upb_strview_make("", strlen(""))); }
UPB_INLINE void envoy_config_metrics_v3_TagSpecifier_set_tag_name(envoy_config_metrics_v3_TagSpecifier *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
}
UPB_INLINE void envoy_config_metrics_v3_TagSpecifier_set_regex(envoy_config_metrics_v3_TagSpecifier *msg, upb_strview value) {
UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(8, 16), value, UPB_SIZE(16, 32), 2);
}
UPB_INLINE void envoy_config_metrics_v3_TagSpecifier_set_fixed_value(envoy_config_metrics_v3_TagSpecifier *msg, upb_strview value) {
UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(8, 16), value, UPB_SIZE(16, 32), 3);
}
/* envoy.config.metrics.v3.HistogramBucketSettings */
UPB_INLINE envoy_config_metrics_v3_HistogramBucketSettings *envoy_config_metrics_v3_HistogramBucketSettings_new(upb_arena *arena) {
return (envoy_config_metrics_v3_HistogramBucketSettings *)_upb_msg_new(&envoy_config_metrics_v3_HistogramBucketSettings_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_HistogramBucketSettings *envoy_config_metrics_v3_HistogramBucketSettings_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_HistogramBucketSettings *ret = envoy_config_metrics_v3_HistogramBucketSettings_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_HistogramBucketSettings_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_HistogramBucketSettings *envoy_config_metrics_v3_HistogramBucketSettings_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_HistogramBucketSettings *ret = envoy_config_metrics_v3_HistogramBucketSettings_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_HistogramBucketSettings_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_HistogramBucketSettings_serialize(const envoy_config_metrics_v3_HistogramBucketSettings *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_HistogramBucketSettings_msginit, arena, len);
}
UPB_INLINE bool envoy_config_metrics_v3_HistogramBucketSettings_has_match(const envoy_config_metrics_v3_HistogramBucketSettings *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* envoy_config_metrics_v3_HistogramBucketSettings_match(const envoy_config_metrics_v3_HistogramBucketSettings *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_matcher_v3_StringMatcher*); }
UPB_INLINE double const* envoy_config_metrics_v3_HistogramBucketSettings_buckets(const envoy_config_metrics_v3_HistogramBucketSettings *msg, size_t *len) { return (double const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
UPB_INLINE void envoy_config_metrics_v3_HistogramBucketSettings_set_match(envoy_config_metrics_v3_HistogramBucketSettings *msg, struct envoy_type_matcher_v3_StringMatcher* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_matcher_v3_StringMatcher*) = value;
}
UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_config_metrics_v3_HistogramBucketSettings_mutable_match(envoy_config_metrics_v3_HistogramBucketSettings *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)envoy_config_metrics_v3_HistogramBucketSettings_match(msg);
if (sub == NULL) {
sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_HistogramBucketSettings_set_match(msg, sub);
}
return sub;
}
UPB_INLINE double* envoy_config_metrics_v3_HistogramBucketSettings_mutable_buckets(envoy_config_metrics_v3_HistogramBucketSettings *msg, size_t *len) {
return (double*)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
}
UPB_INLINE double* envoy_config_metrics_v3_HistogramBucketSettings_resize_buckets(envoy_config_metrics_v3_HistogramBucketSettings *msg, size_t len, upb_arena *arena) {
return (double*)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, 3, arena);
}
UPB_INLINE bool envoy_config_metrics_v3_HistogramBucketSettings_add_buckets(envoy_config_metrics_v3_HistogramBucketSettings *msg, double val, upb_arena *arena) {
return _upb_array_append_accessor2(msg, UPB_SIZE(8, 16), 3, &val,
arena);
}
/* envoy.config.metrics.v3.StatsdSink */
UPB_INLINE envoy_config_metrics_v3_StatsdSink *envoy_config_metrics_v3_StatsdSink_new(upb_arena *arena) {
return (envoy_config_metrics_v3_StatsdSink *)_upb_msg_new(&envoy_config_metrics_v3_StatsdSink_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_StatsdSink *envoy_config_metrics_v3_StatsdSink_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_StatsdSink *ret = envoy_config_metrics_v3_StatsdSink_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsdSink_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_StatsdSink *envoy_config_metrics_v3_StatsdSink_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_StatsdSink *ret = envoy_config_metrics_v3_StatsdSink_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_StatsdSink_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_StatsdSink_serialize(const envoy_config_metrics_v3_StatsdSink *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_StatsdSink_msginit, arena, len);
}
typedef enum {
envoy_config_metrics_v3_StatsdSink_statsd_specifier_address = 1,
envoy_config_metrics_v3_StatsdSink_statsd_specifier_tcp_cluster_name = 2,
envoy_config_metrics_v3_StatsdSink_statsd_specifier_NOT_SET = 0
} envoy_config_metrics_v3_StatsdSink_statsd_specifier_oneofcases;
UPB_INLINE envoy_config_metrics_v3_StatsdSink_statsd_specifier_oneofcases envoy_config_metrics_v3_StatsdSink_statsd_specifier_case(const envoy_config_metrics_v3_StatsdSink* msg) { return (envoy_config_metrics_v3_StatsdSink_statsd_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(16, 32), int32_t); }
UPB_INLINE bool envoy_config_metrics_v3_StatsdSink_has_address(const envoy_config_metrics_v3_StatsdSink *msg) { return _upb_getoneofcase(msg, UPB_SIZE(16, 32)) == 1; }
UPB_INLINE const struct envoy_config_core_v3_Address* envoy_config_metrics_v3_StatsdSink_address(const envoy_config_metrics_v3_StatsdSink *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_Address*, UPB_SIZE(8, 16), UPB_SIZE(16, 32), 1, NULL); }
UPB_INLINE bool envoy_config_metrics_v3_StatsdSink_has_tcp_cluster_name(const envoy_config_metrics_v3_StatsdSink *msg) { return _upb_getoneofcase(msg, UPB_SIZE(16, 32)) == 2; }
UPB_INLINE upb_strview envoy_config_metrics_v3_StatsdSink_tcp_cluster_name(const envoy_config_metrics_v3_StatsdSink *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(8, 16), UPB_SIZE(16, 32), 2, upb_strview_make("", strlen(""))); }
UPB_INLINE upb_strview envoy_config_metrics_v3_StatsdSink_prefix(const envoy_config_metrics_v3_StatsdSink *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
UPB_INLINE void envoy_config_metrics_v3_StatsdSink_set_address(envoy_config_metrics_v3_StatsdSink *msg, struct envoy_config_core_v3_Address* value) {
UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_Address*, UPB_SIZE(8, 16), value, UPB_SIZE(16, 32), 1);
}
UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_metrics_v3_StatsdSink_mutable_address(envoy_config_metrics_v3_StatsdSink *msg, upb_arena *arena) {
struct envoy_config_core_v3_Address* sub = (struct envoy_config_core_v3_Address*)envoy_config_metrics_v3_StatsdSink_address(msg);
if (sub == NULL) {
sub = (struct envoy_config_core_v3_Address*)_upb_msg_new(&envoy_config_core_v3_Address_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_StatsdSink_set_address(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_config_metrics_v3_StatsdSink_set_tcp_cluster_name(envoy_config_metrics_v3_StatsdSink *msg, upb_strview value) {
UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(8, 16), value, UPB_SIZE(16, 32), 2);
}
UPB_INLINE void envoy_config_metrics_v3_StatsdSink_set_prefix(envoy_config_metrics_v3_StatsdSink *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
}
/* envoy.config.metrics.v3.DogStatsdSink */
UPB_INLINE envoy_config_metrics_v3_DogStatsdSink *envoy_config_metrics_v3_DogStatsdSink_new(upb_arena *arena) {
return (envoy_config_metrics_v3_DogStatsdSink *)_upb_msg_new(&envoy_config_metrics_v3_DogStatsdSink_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_DogStatsdSink *envoy_config_metrics_v3_DogStatsdSink_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_DogStatsdSink *ret = envoy_config_metrics_v3_DogStatsdSink_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_DogStatsdSink_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_DogStatsdSink *envoy_config_metrics_v3_DogStatsdSink_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_DogStatsdSink *ret = envoy_config_metrics_v3_DogStatsdSink_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_DogStatsdSink_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_DogStatsdSink_serialize(const envoy_config_metrics_v3_DogStatsdSink *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_DogStatsdSink_msginit, arena, len);
}
typedef enum {
envoy_config_metrics_v3_DogStatsdSink_dog_statsd_specifier_address = 1,
envoy_config_metrics_v3_DogStatsdSink_dog_statsd_specifier_NOT_SET = 0
} envoy_config_metrics_v3_DogStatsdSink_dog_statsd_specifier_oneofcases;
UPB_INLINE envoy_config_metrics_v3_DogStatsdSink_dog_statsd_specifier_oneofcases envoy_config_metrics_v3_DogStatsdSink_dog_statsd_specifier_case(const envoy_config_metrics_v3_DogStatsdSink* msg) { return (envoy_config_metrics_v3_DogStatsdSink_dog_statsd_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(20, 40), int32_t); }
UPB_INLINE bool envoy_config_metrics_v3_DogStatsdSink_has_address(const envoy_config_metrics_v3_DogStatsdSink *msg) { return _upb_getoneofcase(msg, UPB_SIZE(20, 40)) == 1; }
UPB_INLINE const struct envoy_config_core_v3_Address* envoy_config_metrics_v3_DogStatsdSink_address(const envoy_config_metrics_v3_DogStatsdSink *msg) { return UPB_READ_ONEOF(msg, const struct envoy_config_core_v3_Address*, UPB_SIZE(16, 32), UPB_SIZE(20, 40), 1, NULL); }
UPB_INLINE upb_strview envoy_config_metrics_v3_DogStatsdSink_prefix(const envoy_config_metrics_v3_DogStatsdSink *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
UPB_INLINE bool envoy_config_metrics_v3_DogStatsdSink_has_max_bytes_per_datagram(const envoy_config_metrics_v3_DogStatsdSink *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_metrics_v3_DogStatsdSink_max_bytes_per_datagram(const envoy_config_metrics_v3_DogStatsdSink *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_UInt64Value*); }
UPB_INLINE void envoy_config_metrics_v3_DogStatsdSink_set_address(envoy_config_metrics_v3_DogStatsdSink *msg, struct envoy_config_core_v3_Address* value) {
UPB_WRITE_ONEOF(msg, struct envoy_config_core_v3_Address*, UPB_SIZE(16, 32), value, UPB_SIZE(20, 40), 1);
}
UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_metrics_v3_DogStatsdSink_mutable_address(envoy_config_metrics_v3_DogStatsdSink *msg, upb_arena *arena) {
struct envoy_config_core_v3_Address* sub = (struct envoy_config_core_v3_Address*)envoy_config_metrics_v3_DogStatsdSink_address(msg);
if (sub == NULL) {
sub = (struct envoy_config_core_v3_Address*)_upb_msg_new(&envoy_config_core_v3_Address_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_DogStatsdSink_set_address(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_config_metrics_v3_DogStatsdSink_set_prefix(envoy_config_metrics_v3_DogStatsdSink *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
}
UPB_INLINE void envoy_config_metrics_v3_DogStatsdSink_set_max_bytes_per_datagram(envoy_config_metrics_v3_DogStatsdSink *msg, struct google_protobuf_UInt64Value* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_UInt64Value*) = value;
}
UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_metrics_v3_DogStatsdSink_mutable_max_bytes_per_datagram(envoy_config_metrics_v3_DogStatsdSink *msg, upb_arena *arena) {
struct google_protobuf_UInt64Value* sub = (struct google_protobuf_UInt64Value*)envoy_config_metrics_v3_DogStatsdSink_max_bytes_per_datagram(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt64Value*)_upb_msg_new(&google_protobuf_UInt64Value_msginit, arena);
if (!sub) return NULL;
envoy_config_metrics_v3_DogStatsdSink_set_max_bytes_per_datagram(msg, sub);
}
return sub;
}
/* envoy.config.metrics.v3.HystrixSink */
UPB_INLINE envoy_config_metrics_v3_HystrixSink *envoy_config_metrics_v3_HystrixSink_new(upb_arena *arena) {
return (envoy_config_metrics_v3_HystrixSink *)_upb_msg_new(&envoy_config_metrics_v3_HystrixSink_msginit, arena);
}
UPB_INLINE envoy_config_metrics_v3_HystrixSink *envoy_config_metrics_v3_HystrixSink_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_metrics_v3_HystrixSink *ret = envoy_config_metrics_v3_HystrixSink_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_metrics_v3_HystrixSink_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_metrics_v3_HystrixSink *envoy_config_metrics_v3_HystrixSink_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_metrics_v3_HystrixSink *ret = envoy_config_metrics_v3_HystrixSink_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_metrics_v3_HystrixSink_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_metrics_v3_HystrixSink_serialize(const envoy_config_metrics_v3_HystrixSink *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_metrics_v3_HystrixSink_msginit, arena, len);
}
UPB_INLINE int64_t envoy_config_metrics_v3_HystrixSink_num_buckets(const envoy_config_metrics_v3_HystrixSink *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t); }
UPB_INLINE void envoy_config_metrics_v3_HystrixSink_set_num_buckets(envoy_config_metrics_v3_HystrixSink *msg, int64_t value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t) = value;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_CONFIG_METRICS_V3_STATS_PROTO_UPB_H_ */

@ -0,0 +1,141 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/overload/v3/overload.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/config/overload/v3/overload.upb.h"
#include "envoy/type/v3/percent.upb.h"
#include "google/protobuf/any.upb.h"
#include "google/protobuf/duration.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "validate/validate.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_config_overload_v3_ResourceMonitor_submsgs[1] = {
&google_protobuf_Any_msginit,
};
static const upb_msglayout_field envoy_config_overload_v3_ResourceMonitor__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{3, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 0, 11, 1},
};
const upb_msglayout envoy_config_overload_v3_ResourceMonitor_msginit = {
&envoy_config_overload_v3_ResourceMonitor_submsgs[0],
&envoy_config_overload_v3_ResourceMonitor__fields[0],
UPB_SIZE(16, 32), 2, false, 255,
};
static const upb_msglayout_field envoy_config_overload_v3_ThresholdTrigger__fields[1] = {
{1, UPB_SIZE(0, 0), 0, 0, 1, 1},
};
const upb_msglayout envoy_config_overload_v3_ThresholdTrigger_msginit = {
NULL,
&envoy_config_overload_v3_ThresholdTrigger__fields[0],
UPB_SIZE(8, 8), 1, false, 255,
};
static const upb_msglayout_field envoy_config_overload_v3_ScaledTrigger__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 0, 1, 1},
{2, UPB_SIZE(8, 8), 0, 0, 1, 1},
};
const upb_msglayout envoy_config_overload_v3_ScaledTrigger_msginit = {
NULL,
&envoy_config_overload_v3_ScaledTrigger__fields[0],
UPB_SIZE(16, 16), 2, false, 255,
};
static const upb_msglayout *const envoy_config_overload_v3_Trigger_submsgs[2] = {
&envoy_config_overload_v3_ScaledTrigger_msginit,
&envoy_config_overload_v3_ThresholdTrigger_msginit,
};
static const upb_msglayout_field envoy_config_overload_v3_Trigger__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 1, 11, 1},
{3, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 0, 11, 1},
};
const upb_msglayout envoy_config_overload_v3_Trigger_msginit = {
&envoy_config_overload_v3_Trigger_submsgs[0],
&envoy_config_overload_v3_Trigger__fields[0],
UPB_SIZE(16, 32), 3, false, 255,
};
static const upb_msglayout *const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_submsgs[1] = {
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit,
};
static const upb_msglayout_field envoy_config_overload_v3_ScaleTimersOverloadActionConfig__fields[1] = {
{1, UPB_SIZE(0, 0), 0, 0, 11, 3},
};
const upb_msglayout envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit = {
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_submsgs[0],
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig__fields[0],
UPB_SIZE(8, 8), 1, false, 255,
};
static const upb_msglayout *const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_submsgs[2] = {
&envoy_type_v3_Percent_msginit,
&google_protobuf_Duration_msginit,
};
static const upb_msglayout_field envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 0, 14, 1},
{2, UPB_SIZE(4, 8), UPB_SIZE(-9, -17), 1, 11, 1},
{3, UPB_SIZE(4, 8), UPB_SIZE(-9, -17), 0, 11, 1},
};
const upb_msglayout envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit = {
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_submsgs[0],
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer__fields[0],
UPB_SIZE(16, 24), 3, false, 255,
};
static const upb_msglayout *const envoy_config_overload_v3_OverloadAction_submsgs[2] = {
&envoy_config_overload_v3_Trigger_msginit,
&google_protobuf_Any_msginit,
};
static const upb_msglayout_field envoy_config_overload_v3_OverloadAction__fields[3] = {
{1, UPB_SIZE(4, 8), 0, 0, 9, 1},
{2, UPB_SIZE(16, 32), 0, 0, 11, 3},
{3, UPB_SIZE(12, 24), 1, 1, 11, 1},
};
const upb_msglayout envoy_config_overload_v3_OverloadAction_msginit = {
&envoy_config_overload_v3_OverloadAction_submsgs[0],
&envoy_config_overload_v3_OverloadAction__fields[0],
UPB_SIZE(24, 48), 3, false, 255,
};
static const upb_msglayout *const envoy_config_overload_v3_OverloadManager_submsgs[3] = {
&envoy_config_overload_v3_OverloadAction_msginit,
&envoy_config_overload_v3_ResourceMonitor_msginit,
&google_protobuf_Duration_msginit,
};
static const upb_msglayout_field envoy_config_overload_v3_OverloadManager__fields[3] = {
{1, UPB_SIZE(4, 8), 1, 2, 11, 1},
{2, UPB_SIZE(8, 16), 0, 1, 11, 3},
{3, UPB_SIZE(12, 24), 0, 0, 11, 3},
};
const upb_msglayout envoy_config_overload_v3_OverloadManager_msginit = {
&envoy_config_overload_v3_OverloadManager_submsgs[0],
&envoy_config_overload_v3_OverloadManager__fields[0],
UPB_SIZE(16, 32), 3, false, 255,
};
#include "upb/port_undef.inc"

@ -0,0 +1,452 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/overload/v3/overload.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_CONFIG_OVERLOAD_V3_OVERLOAD_PROTO_UPB_H_
#define ENVOY_CONFIG_OVERLOAD_V3_OVERLOAD_PROTO_UPB_H_
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/decode_fast.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_config_overload_v3_ResourceMonitor;
struct envoy_config_overload_v3_ThresholdTrigger;
struct envoy_config_overload_v3_ScaledTrigger;
struct envoy_config_overload_v3_Trigger;
struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig;
struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer;
struct envoy_config_overload_v3_OverloadAction;
struct envoy_config_overload_v3_OverloadManager;
typedef struct envoy_config_overload_v3_ResourceMonitor envoy_config_overload_v3_ResourceMonitor;
typedef struct envoy_config_overload_v3_ThresholdTrigger envoy_config_overload_v3_ThresholdTrigger;
typedef struct envoy_config_overload_v3_ScaledTrigger envoy_config_overload_v3_ScaledTrigger;
typedef struct envoy_config_overload_v3_Trigger envoy_config_overload_v3_Trigger;
typedef struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig envoy_config_overload_v3_ScaleTimersOverloadActionConfig;
typedef struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer;
typedef struct envoy_config_overload_v3_OverloadAction envoy_config_overload_v3_OverloadAction;
typedef struct envoy_config_overload_v3_OverloadManager envoy_config_overload_v3_OverloadManager;
extern const upb_msglayout envoy_config_overload_v3_ResourceMonitor_msginit;
extern const upb_msglayout envoy_config_overload_v3_ThresholdTrigger_msginit;
extern const upb_msglayout envoy_config_overload_v3_ScaledTrigger_msginit;
extern const upb_msglayout envoy_config_overload_v3_Trigger_msginit;
extern const upb_msglayout envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit;
extern const upb_msglayout envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit;
extern const upb_msglayout envoy_config_overload_v3_OverloadAction_msginit;
extern const upb_msglayout envoy_config_overload_v3_OverloadManager_msginit;
struct envoy_type_v3_Percent;
struct google_protobuf_Any;
struct google_protobuf_Duration;
extern const upb_msglayout envoy_type_v3_Percent_msginit;
extern const upb_msglayout google_protobuf_Any_msginit;
extern const upb_msglayout google_protobuf_Duration_msginit;
typedef enum {
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_UNSPECIFIED = 0,
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_HTTP_DOWNSTREAM_CONNECTION_IDLE = 1,
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_HTTP_DOWNSTREAM_STREAM_IDLE = 2,
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_TRANSPORT_SOCKET_CONNECT = 3
} envoy_config_overload_v3_ScaleTimersOverloadActionConfig_TimerType;
/* envoy.config.overload.v3.ResourceMonitor */
UPB_INLINE envoy_config_overload_v3_ResourceMonitor *envoy_config_overload_v3_ResourceMonitor_new(upb_arena *arena) {
return (envoy_config_overload_v3_ResourceMonitor *)_upb_msg_new(&envoy_config_overload_v3_ResourceMonitor_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_ResourceMonitor *envoy_config_overload_v3_ResourceMonitor_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_ResourceMonitor *ret = envoy_config_overload_v3_ResourceMonitor_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_ResourceMonitor_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_ResourceMonitor *envoy_config_overload_v3_ResourceMonitor_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_ResourceMonitor *ret = envoy_config_overload_v3_ResourceMonitor_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_ResourceMonitor_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_ResourceMonitor_serialize(const envoy_config_overload_v3_ResourceMonitor *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_ResourceMonitor_msginit, arena, len);
}
typedef enum {
envoy_config_overload_v3_ResourceMonitor_config_type_typed_config = 3,
envoy_config_overload_v3_ResourceMonitor_config_type_NOT_SET = 0
} envoy_config_overload_v3_ResourceMonitor_config_type_oneofcases;
UPB_INLINE envoy_config_overload_v3_ResourceMonitor_config_type_oneofcases envoy_config_overload_v3_ResourceMonitor_config_type_case(const envoy_config_overload_v3_ResourceMonitor* msg) { return (envoy_config_overload_v3_ResourceMonitor_config_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
UPB_INLINE upb_strview envoy_config_overload_v3_ResourceMonitor_name(const envoy_config_overload_v3_ResourceMonitor *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
UPB_INLINE bool envoy_config_overload_v3_ResourceMonitor_has_typed_config(const envoy_config_overload_v3_ResourceMonitor *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
UPB_INLINE const struct google_protobuf_Any* envoy_config_overload_v3_ResourceMonitor_typed_config(const envoy_config_overload_v3_ResourceMonitor *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
UPB_INLINE void envoy_config_overload_v3_ResourceMonitor_set_name(envoy_config_overload_v3_ResourceMonitor *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
}
UPB_INLINE void envoy_config_overload_v3_ResourceMonitor_set_typed_config(envoy_config_overload_v3_ResourceMonitor *msg, struct google_protobuf_Any* value) {
UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
}
UPB_INLINE struct google_protobuf_Any* envoy_config_overload_v3_ResourceMonitor_mutable_typed_config(envoy_config_overload_v3_ResourceMonitor *msg, upb_arena *arena) {
struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_overload_v3_ResourceMonitor_typed_config(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_ResourceMonitor_set_typed_config(msg, sub);
}
return sub;
}
/* envoy.config.overload.v3.ThresholdTrigger */
UPB_INLINE envoy_config_overload_v3_ThresholdTrigger *envoy_config_overload_v3_ThresholdTrigger_new(upb_arena *arena) {
return (envoy_config_overload_v3_ThresholdTrigger *)_upb_msg_new(&envoy_config_overload_v3_ThresholdTrigger_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_ThresholdTrigger *envoy_config_overload_v3_ThresholdTrigger_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_ThresholdTrigger *ret = envoy_config_overload_v3_ThresholdTrigger_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_ThresholdTrigger_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_ThresholdTrigger *envoy_config_overload_v3_ThresholdTrigger_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_ThresholdTrigger *ret = envoy_config_overload_v3_ThresholdTrigger_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_ThresholdTrigger_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_ThresholdTrigger_serialize(const envoy_config_overload_v3_ThresholdTrigger *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_ThresholdTrigger_msginit, arena, len);
}
UPB_INLINE double envoy_config_overload_v3_ThresholdTrigger_value(const envoy_config_overload_v3_ThresholdTrigger *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), double); }
UPB_INLINE void envoy_config_overload_v3_ThresholdTrigger_set_value(envoy_config_overload_v3_ThresholdTrigger *msg, double value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), double) = value;
}
/* envoy.config.overload.v3.ScaledTrigger */
UPB_INLINE envoy_config_overload_v3_ScaledTrigger *envoy_config_overload_v3_ScaledTrigger_new(upb_arena *arena) {
return (envoy_config_overload_v3_ScaledTrigger *)_upb_msg_new(&envoy_config_overload_v3_ScaledTrigger_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_ScaledTrigger *envoy_config_overload_v3_ScaledTrigger_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_ScaledTrigger *ret = envoy_config_overload_v3_ScaledTrigger_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_ScaledTrigger_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_ScaledTrigger *envoy_config_overload_v3_ScaledTrigger_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_ScaledTrigger *ret = envoy_config_overload_v3_ScaledTrigger_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_ScaledTrigger_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_ScaledTrigger_serialize(const envoy_config_overload_v3_ScaledTrigger *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_ScaledTrigger_msginit, arena, len);
}
UPB_INLINE double envoy_config_overload_v3_ScaledTrigger_scaling_threshold(const envoy_config_overload_v3_ScaledTrigger *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), double); }
UPB_INLINE double envoy_config_overload_v3_ScaledTrigger_saturation_threshold(const envoy_config_overload_v3_ScaledTrigger *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), double); }
UPB_INLINE void envoy_config_overload_v3_ScaledTrigger_set_scaling_threshold(envoy_config_overload_v3_ScaledTrigger *msg, double value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), double) = value;
}
UPB_INLINE void envoy_config_overload_v3_ScaledTrigger_set_saturation_threshold(envoy_config_overload_v3_ScaledTrigger *msg, double value) {
*UPB_PTR_AT(msg, UPB_SIZE(8, 8), double) = value;
}
/* envoy.config.overload.v3.Trigger */
UPB_INLINE envoy_config_overload_v3_Trigger *envoy_config_overload_v3_Trigger_new(upb_arena *arena) {
return (envoy_config_overload_v3_Trigger *)_upb_msg_new(&envoy_config_overload_v3_Trigger_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_Trigger *envoy_config_overload_v3_Trigger_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_Trigger *ret = envoy_config_overload_v3_Trigger_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_Trigger_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_Trigger *envoy_config_overload_v3_Trigger_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_Trigger *ret = envoy_config_overload_v3_Trigger_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_Trigger_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_Trigger_serialize(const envoy_config_overload_v3_Trigger *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_Trigger_msginit, arena, len);
}
typedef enum {
envoy_config_overload_v3_Trigger_trigger_oneof_threshold = 2,
envoy_config_overload_v3_Trigger_trigger_oneof_scaled = 3,
envoy_config_overload_v3_Trigger_trigger_oneof_NOT_SET = 0
} envoy_config_overload_v3_Trigger_trigger_oneof_oneofcases;
UPB_INLINE envoy_config_overload_v3_Trigger_trigger_oneof_oneofcases envoy_config_overload_v3_Trigger_trigger_oneof_case(const envoy_config_overload_v3_Trigger* msg) { return (envoy_config_overload_v3_Trigger_trigger_oneof_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
UPB_INLINE upb_strview envoy_config_overload_v3_Trigger_name(const envoy_config_overload_v3_Trigger *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
UPB_INLINE bool envoy_config_overload_v3_Trigger_has_threshold(const envoy_config_overload_v3_Trigger *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 2; }
UPB_INLINE const envoy_config_overload_v3_ThresholdTrigger* envoy_config_overload_v3_Trigger_threshold(const envoy_config_overload_v3_Trigger *msg) { return UPB_READ_ONEOF(msg, const envoy_config_overload_v3_ThresholdTrigger*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 2, NULL); }
UPB_INLINE bool envoy_config_overload_v3_Trigger_has_scaled(const envoy_config_overload_v3_Trigger *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
UPB_INLINE const envoy_config_overload_v3_ScaledTrigger* envoy_config_overload_v3_Trigger_scaled(const envoy_config_overload_v3_Trigger *msg) { return UPB_READ_ONEOF(msg, const envoy_config_overload_v3_ScaledTrigger*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
UPB_INLINE void envoy_config_overload_v3_Trigger_set_name(envoy_config_overload_v3_Trigger *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
}
UPB_INLINE void envoy_config_overload_v3_Trigger_set_threshold(envoy_config_overload_v3_Trigger *msg, envoy_config_overload_v3_ThresholdTrigger* value) {
UPB_WRITE_ONEOF(msg, envoy_config_overload_v3_ThresholdTrigger*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 2);
}
UPB_INLINE struct envoy_config_overload_v3_ThresholdTrigger* envoy_config_overload_v3_Trigger_mutable_threshold(envoy_config_overload_v3_Trigger *msg, upb_arena *arena) {
struct envoy_config_overload_v3_ThresholdTrigger* sub = (struct envoy_config_overload_v3_ThresholdTrigger*)envoy_config_overload_v3_Trigger_threshold(msg);
if (sub == NULL) {
sub = (struct envoy_config_overload_v3_ThresholdTrigger*)_upb_msg_new(&envoy_config_overload_v3_ThresholdTrigger_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_Trigger_set_threshold(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_config_overload_v3_Trigger_set_scaled(envoy_config_overload_v3_Trigger *msg, envoy_config_overload_v3_ScaledTrigger* value) {
UPB_WRITE_ONEOF(msg, envoy_config_overload_v3_ScaledTrigger*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
}
UPB_INLINE struct envoy_config_overload_v3_ScaledTrigger* envoy_config_overload_v3_Trigger_mutable_scaled(envoy_config_overload_v3_Trigger *msg, upb_arena *arena) {
struct envoy_config_overload_v3_ScaledTrigger* sub = (struct envoy_config_overload_v3_ScaledTrigger*)envoy_config_overload_v3_Trigger_scaled(msg);
if (sub == NULL) {
sub = (struct envoy_config_overload_v3_ScaledTrigger*)_upb_msg_new(&envoy_config_overload_v3_ScaledTrigger_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_Trigger_set_scaled(msg, sub);
}
return sub;
}
/* envoy.config.overload.v3.ScaleTimersOverloadActionConfig */
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_new(upb_arena *arena) {
return (envoy_config_overload_v3_ScaleTimersOverloadActionConfig *)_upb_msg_new(&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_ScaleTimersOverloadActionConfig *ret = envoy_config_overload_v3_ScaleTimersOverloadActionConfig_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_ScaleTimersOverloadActionConfig *ret = envoy_config_overload_v3_ScaleTimersOverloadActionConfig_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_serialize(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit, arena, len);
}
UPB_INLINE bool envoy_config_overload_v3_ScaleTimersOverloadActionConfig_has_timer_scale_factors(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
UPB_INLINE const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer* const* envoy_config_overload_v3_ScaleTimersOverloadActionConfig_timer_scale_factors(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig *msg, size_t *len) { return (const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer** envoy_config_overload_v3_ScaleTimersOverloadActionConfig_mutable_timer_scale_factors(envoy_config_overload_v3_ScaleTimersOverloadActionConfig *msg, size_t *len) {
return (envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
}
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer** envoy_config_overload_v3_ScaleTimersOverloadActionConfig_resize_timer_scale_factors(envoy_config_overload_v3_ScaleTimersOverloadActionConfig *msg, size_t len, upb_arena *arena) {
return (envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer**)_upb_array_resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer* envoy_config_overload_v3_ScaleTimersOverloadActionConfig_add_timer_scale_factors(envoy_config_overload_v3_ScaleTimersOverloadActionConfig *msg, upb_arena *arena) {
struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer* sub = (struct envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer*)_upb_msg_new(&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
/* envoy.config.overload.v3.ScaleTimersOverloadActionConfig.ScaleTimer */
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_new(upb_arena *arena) {
return (envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *)_upb_msg_new(&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *ret = envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *ret = envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_serialize(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit, arena, len);
}
typedef enum {
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_min_timeout = 2,
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_min_scale = 3,
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_NOT_SET = 0
} envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_oneofcases;
UPB_INLINE envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_oneofcases envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_case(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer* msg) { return (envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_overload_adjust_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(8, 16), int32_t); }
UPB_INLINE int32_t envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_timer(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
UPB_INLINE bool envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_has_min_timeout(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 2; }
UPB_INLINE const struct google_protobuf_Duration* envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_min_timeout(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Duration*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 2, NULL); }
UPB_INLINE bool envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_has_min_scale(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 3; }
UPB_INLINE const struct envoy_type_v3_Percent* envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_min_scale(const envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg) { return UPB_READ_ONEOF(msg, const struct envoy_type_v3_Percent*, UPB_SIZE(4, 8), UPB_SIZE(8, 16), 3, NULL); }
UPB_INLINE void envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_set_timer(envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg, int32_t value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
}
UPB_INLINE void envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_set_min_timeout(envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg, struct google_protobuf_Duration* value) {
UPB_WRITE_ONEOF(msg, struct google_protobuf_Duration*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 2);
}
UPB_INLINE struct google_protobuf_Duration* envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_mutable_min_timeout(envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_min_timeout(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_set_min_timeout(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_set_min_scale(envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg, struct envoy_type_v3_Percent* value) {
UPB_WRITE_ONEOF(msg, struct envoy_type_v3_Percent*, UPB_SIZE(4, 8), value, UPB_SIZE(8, 16), 3);
}
UPB_INLINE struct envoy_type_v3_Percent* envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_mutable_min_scale(envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer *msg, upb_arena *arena) {
struct envoy_type_v3_Percent* sub = (struct envoy_type_v3_Percent*)envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_min_scale(msg);
if (sub == NULL) {
sub = (struct envoy_type_v3_Percent*)_upb_msg_new(&envoy_type_v3_Percent_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_set_min_scale(msg, sub);
}
return sub;
}
/* envoy.config.overload.v3.OverloadAction */
UPB_INLINE envoy_config_overload_v3_OverloadAction *envoy_config_overload_v3_OverloadAction_new(upb_arena *arena) {
return (envoy_config_overload_v3_OverloadAction *)_upb_msg_new(&envoy_config_overload_v3_OverloadAction_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_OverloadAction *envoy_config_overload_v3_OverloadAction_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_OverloadAction *ret = envoy_config_overload_v3_OverloadAction_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_OverloadAction_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_OverloadAction *envoy_config_overload_v3_OverloadAction_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_OverloadAction *ret = envoy_config_overload_v3_OverloadAction_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_OverloadAction_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_OverloadAction_serialize(const envoy_config_overload_v3_OverloadAction *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_OverloadAction_msginit, arena, len);
}
UPB_INLINE upb_strview envoy_config_overload_v3_OverloadAction_name(const envoy_config_overload_v3_OverloadAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
UPB_INLINE bool envoy_config_overload_v3_OverloadAction_has_triggers(const envoy_config_overload_v3_OverloadAction *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
UPB_INLINE const envoy_config_overload_v3_Trigger* const* envoy_config_overload_v3_OverloadAction_triggers(const envoy_config_overload_v3_OverloadAction *msg, size_t *len) { return (const envoy_config_overload_v3_Trigger* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
UPB_INLINE bool envoy_config_overload_v3_OverloadAction_has_typed_config(const envoy_config_overload_v3_OverloadAction *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct google_protobuf_Any* envoy_config_overload_v3_OverloadAction_typed_config(const envoy_config_overload_v3_OverloadAction *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_Any*); }
UPB_INLINE void envoy_config_overload_v3_OverloadAction_set_name(envoy_config_overload_v3_OverloadAction *msg, upb_strview value) {
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
}
UPB_INLINE envoy_config_overload_v3_Trigger** envoy_config_overload_v3_OverloadAction_mutable_triggers(envoy_config_overload_v3_OverloadAction *msg, size_t *len) {
return (envoy_config_overload_v3_Trigger**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
}
UPB_INLINE envoy_config_overload_v3_Trigger** envoy_config_overload_v3_OverloadAction_resize_triggers(envoy_config_overload_v3_OverloadAction *msg, size_t len, upb_arena *arena) {
return (envoy_config_overload_v3_Trigger**)_upb_array_resize_accessor2(msg, UPB_SIZE(16, 32), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_config_overload_v3_Trigger* envoy_config_overload_v3_OverloadAction_add_triggers(envoy_config_overload_v3_OverloadAction *msg, upb_arena *arena) {
struct envoy_config_overload_v3_Trigger* sub = (struct envoy_config_overload_v3_Trigger*)_upb_msg_new(&envoy_config_overload_v3_Trigger_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(16, 32), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
UPB_INLINE void envoy_config_overload_v3_OverloadAction_set_typed_config(envoy_config_overload_v3_OverloadAction *msg, struct google_protobuf_Any* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_Any*) = value;
}
UPB_INLINE struct google_protobuf_Any* envoy_config_overload_v3_OverloadAction_mutable_typed_config(envoy_config_overload_v3_OverloadAction *msg, upb_arena *arena) {
struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_overload_v3_OverloadAction_typed_config(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_OverloadAction_set_typed_config(msg, sub);
}
return sub;
}
/* envoy.config.overload.v3.OverloadManager */
UPB_INLINE envoy_config_overload_v3_OverloadManager *envoy_config_overload_v3_OverloadManager_new(upb_arena *arena) {
return (envoy_config_overload_v3_OverloadManager *)_upb_msg_new(&envoy_config_overload_v3_OverloadManager_msginit, arena);
}
UPB_INLINE envoy_config_overload_v3_OverloadManager *envoy_config_overload_v3_OverloadManager_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_config_overload_v3_OverloadManager *ret = envoy_config_overload_v3_OverloadManager_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_config_overload_v3_OverloadManager_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_config_overload_v3_OverloadManager *envoy_config_overload_v3_OverloadManager_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_config_overload_v3_OverloadManager *ret = envoy_config_overload_v3_OverloadManager_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_config_overload_v3_OverloadManager_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_config_overload_v3_OverloadManager_serialize(const envoy_config_overload_v3_OverloadManager *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_config_overload_v3_OverloadManager_msginit, arena, len);
}
UPB_INLINE bool envoy_config_overload_v3_OverloadManager_has_refresh_interval(const envoy_config_overload_v3_OverloadManager *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct google_protobuf_Duration* envoy_config_overload_v3_OverloadManager_refresh_interval(const envoy_config_overload_v3_OverloadManager *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*); }
UPB_INLINE bool envoy_config_overload_v3_OverloadManager_has_resource_monitors(const envoy_config_overload_v3_OverloadManager *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
UPB_INLINE const envoy_config_overload_v3_ResourceMonitor* const* envoy_config_overload_v3_OverloadManager_resource_monitors(const envoy_config_overload_v3_OverloadManager *msg, size_t *len) { return (const envoy_config_overload_v3_ResourceMonitor* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
UPB_INLINE bool envoy_config_overload_v3_OverloadManager_has_actions(const envoy_config_overload_v3_OverloadManager *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(12, 24)); }
UPB_INLINE const envoy_config_overload_v3_OverloadAction* const* envoy_config_overload_v3_OverloadManager_actions(const envoy_config_overload_v3_OverloadManager *msg, size_t *len) { return (const envoy_config_overload_v3_OverloadAction* const*)_upb_array_accessor(msg, UPB_SIZE(12, 24), len); }
UPB_INLINE void envoy_config_overload_v3_OverloadManager_set_refresh_interval(envoy_config_overload_v3_OverloadManager *msg, struct google_protobuf_Duration* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
}
UPB_INLINE struct google_protobuf_Duration* envoy_config_overload_v3_OverloadManager_mutable_refresh_interval(envoy_config_overload_v3_OverloadManager *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_overload_v3_OverloadManager_refresh_interval(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Duration*)_upb_msg_new(&google_protobuf_Duration_msginit, arena);
if (!sub) return NULL;
envoy_config_overload_v3_OverloadManager_set_refresh_interval(msg, sub);
}
return sub;
}
UPB_INLINE envoy_config_overload_v3_ResourceMonitor** envoy_config_overload_v3_OverloadManager_mutable_resource_monitors(envoy_config_overload_v3_OverloadManager *msg, size_t *len) {
return (envoy_config_overload_v3_ResourceMonitor**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
}
UPB_INLINE envoy_config_overload_v3_ResourceMonitor** envoy_config_overload_v3_OverloadManager_resize_resource_monitors(envoy_config_overload_v3_OverloadManager *msg, size_t len, upb_arena *arena) {
return (envoy_config_overload_v3_ResourceMonitor**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_config_overload_v3_ResourceMonitor* envoy_config_overload_v3_OverloadManager_add_resource_monitors(envoy_config_overload_v3_OverloadManager *msg, upb_arena *arena) {
struct envoy_config_overload_v3_ResourceMonitor* sub = (struct envoy_config_overload_v3_ResourceMonitor*)_upb_msg_new(&envoy_config_overload_v3_ResourceMonitor_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
UPB_INLINE envoy_config_overload_v3_OverloadAction** envoy_config_overload_v3_OverloadManager_mutable_actions(envoy_config_overload_v3_OverloadManager *msg, size_t *len) {
return (envoy_config_overload_v3_OverloadAction**)_upb_array_mutable_accessor(msg, UPB_SIZE(12, 24), len);
}
UPB_INLINE envoy_config_overload_v3_OverloadAction** envoy_config_overload_v3_OverloadManager_resize_actions(envoy_config_overload_v3_OverloadManager *msg, size_t len, upb_arena *arena) {
return (envoy_config_overload_v3_OverloadAction**)_upb_array_resize_accessor2(msg, UPB_SIZE(12, 24), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_config_overload_v3_OverloadAction* envoy_config_overload_v3_OverloadManager_add_actions(envoy_config_overload_v3_OverloadManager *msg, upb_arena *arena) {
struct envoy_config_overload_v3_OverloadAction* sub = (struct envoy_config_overload_v3_OverloadAction*)_upb_msg_new(&envoy_config_overload_v3_OverloadAction_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(12, 24), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_CONFIG_OVERLOAD_V3_OVERLOAD_PROTO_UPB_H_ */

@ -0,0 +1,93 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/service/status/v3/csds.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/service/status/v3/csds.upb.h"
#include "envoy/admin/v3/config_dump.upb.h"
#include "envoy/config/core/v3/base.upb.h"
#include "envoy/type/matcher/v3/node.upb.h"
#include "google/api/annotations.upb.h"
#include "udpa/annotations/migrate.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_service_status_v3_ClientStatusRequest_submsgs[2] = {
&envoy_config_core_v3_Node_msginit,
&envoy_type_matcher_v3_NodeMatcher_msginit,
};
static const upb_msglayout_field envoy_service_status_v3_ClientStatusRequest__fields[2] = {
{1, UPB_SIZE(8, 16), 0, 1, 11, 3},
{2, UPB_SIZE(4, 8), 1, 0, 11, 1},
};
const upb_msglayout envoy_service_status_v3_ClientStatusRequest_msginit = {
&envoy_service_status_v3_ClientStatusRequest_submsgs[0],
&envoy_service_status_v3_ClientStatusRequest__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_service_status_v3_PerXdsConfig_submsgs[5] = {
&envoy_admin_v3_ClustersConfigDump_msginit,
&envoy_admin_v3_EndpointsConfigDump_msginit,
&envoy_admin_v3_ListenersConfigDump_msginit,
&envoy_admin_v3_RoutesConfigDump_msginit,
&envoy_admin_v3_ScopedRoutesConfigDump_msginit,
};
static const upb_msglayout_field envoy_service_status_v3_PerXdsConfig__fields[7] = {
{1, UPB_SIZE(0, 0), 0, 0, 14, 1},
{2, UPB_SIZE(8, 8), UPB_SIZE(-13, -17), 2, 11, 1},
{3, UPB_SIZE(8, 8), UPB_SIZE(-13, -17), 0, 11, 1},
{4, UPB_SIZE(8, 8), UPB_SIZE(-13, -17), 3, 11, 1},
{5, UPB_SIZE(8, 8), UPB_SIZE(-13, -17), 4, 11, 1},
{6, UPB_SIZE(8, 8), UPB_SIZE(-13, -17), 1, 11, 1},
{7, UPB_SIZE(4, 4), 0, 0, 14, 1},
};
const upb_msglayout envoy_service_status_v3_PerXdsConfig_msginit = {
&envoy_service_status_v3_PerXdsConfig_submsgs[0],
&envoy_service_status_v3_PerXdsConfig__fields[0],
UPB_SIZE(16, 24), 7, false, 255,
};
static const upb_msglayout *const envoy_service_status_v3_ClientConfig_submsgs[2] = {
&envoy_config_core_v3_Node_msginit,
&envoy_service_status_v3_PerXdsConfig_msginit,
};
static const upb_msglayout_field envoy_service_status_v3_ClientConfig__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 0, 1, 11, 3},
};
const upb_msglayout envoy_service_status_v3_ClientConfig_msginit = {
&envoy_service_status_v3_ClientConfig_submsgs[0],
&envoy_service_status_v3_ClientConfig__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout *const envoy_service_status_v3_ClientStatusResponse_submsgs[1] = {
&envoy_service_status_v3_ClientConfig_msginit,
};
static const upb_msglayout_field envoy_service_status_v3_ClientStatusResponse__fields[1] = {
{1, UPB_SIZE(0, 0), 0, 0, 11, 3},
};
const upb_msglayout envoy_service_status_v3_ClientStatusResponse_msginit = {
&envoy_service_status_v3_ClientStatusResponse_submsgs[0],
&envoy_service_status_v3_ClientStatusResponse__fields[0],
UPB_SIZE(8, 8), 1, false, 255,
};
#include "upb/port_undef.inc"

@ -0,0 +1,323 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/service/status/v3/csds.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_SERVICE_STATUS_V3_CSDS_PROTO_UPB_H_
#define ENVOY_SERVICE_STATUS_V3_CSDS_PROTO_UPB_H_
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/decode_fast.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_service_status_v3_ClientStatusRequest;
struct envoy_service_status_v3_PerXdsConfig;
struct envoy_service_status_v3_ClientConfig;
struct envoy_service_status_v3_ClientStatusResponse;
typedef struct envoy_service_status_v3_ClientStatusRequest envoy_service_status_v3_ClientStatusRequest;
typedef struct envoy_service_status_v3_PerXdsConfig envoy_service_status_v3_PerXdsConfig;
typedef struct envoy_service_status_v3_ClientConfig envoy_service_status_v3_ClientConfig;
typedef struct envoy_service_status_v3_ClientStatusResponse envoy_service_status_v3_ClientStatusResponse;
extern const upb_msglayout envoy_service_status_v3_ClientStatusRequest_msginit;
extern const upb_msglayout envoy_service_status_v3_PerXdsConfig_msginit;
extern const upb_msglayout envoy_service_status_v3_ClientConfig_msginit;
extern const upb_msglayout envoy_service_status_v3_ClientStatusResponse_msginit;
struct envoy_admin_v3_ClustersConfigDump;
struct envoy_admin_v3_EndpointsConfigDump;
struct envoy_admin_v3_ListenersConfigDump;
struct envoy_admin_v3_RoutesConfigDump;
struct envoy_admin_v3_ScopedRoutesConfigDump;
struct envoy_config_core_v3_Node;
struct envoy_type_matcher_v3_NodeMatcher;
extern const upb_msglayout envoy_admin_v3_ClustersConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_EndpointsConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_ListenersConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_RoutesConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_msginit;
extern const upb_msglayout envoy_config_core_v3_Node_msginit;
extern const upb_msglayout envoy_type_matcher_v3_NodeMatcher_msginit;
typedef enum {
envoy_service_status_v3_CLIENT_UNKNOWN = 0,
envoy_service_status_v3_CLIENT_REQUESTED = 1,
envoy_service_status_v3_CLIENT_ACKED = 2,
envoy_service_status_v3_CLIENT_NACKED = 3
} envoy_service_status_v3_ClientConfigStatus;
typedef enum {
envoy_service_status_v3_UNKNOWN = 0,
envoy_service_status_v3_SYNCED = 1,
envoy_service_status_v3_NOT_SENT = 2,
envoy_service_status_v3_STALE = 3,
envoy_service_status_v3_ERROR = 4
} envoy_service_status_v3_ConfigStatus;
/* envoy.service.status.v3.ClientStatusRequest */
UPB_INLINE envoy_service_status_v3_ClientStatusRequest *envoy_service_status_v3_ClientStatusRequest_new(upb_arena *arena) {
return (envoy_service_status_v3_ClientStatusRequest *)_upb_msg_new(&envoy_service_status_v3_ClientStatusRequest_msginit, arena);
}
UPB_INLINE envoy_service_status_v3_ClientStatusRequest *envoy_service_status_v3_ClientStatusRequest_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_service_status_v3_ClientStatusRequest *ret = envoy_service_status_v3_ClientStatusRequest_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_service_status_v3_ClientStatusRequest_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_service_status_v3_ClientStatusRequest *envoy_service_status_v3_ClientStatusRequest_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_service_status_v3_ClientStatusRequest *ret = envoy_service_status_v3_ClientStatusRequest_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_service_status_v3_ClientStatusRequest_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_service_status_v3_ClientStatusRequest_serialize(const envoy_service_status_v3_ClientStatusRequest *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_service_status_v3_ClientStatusRequest_msginit, arena, len);
}
UPB_INLINE bool envoy_service_status_v3_ClientStatusRequest_has_node_matchers(const envoy_service_status_v3_ClientStatusRequest *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
UPB_INLINE const struct envoy_type_matcher_v3_NodeMatcher* const* envoy_service_status_v3_ClientStatusRequest_node_matchers(const envoy_service_status_v3_ClientStatusRequest *msg, size_t *len) { return (const struct envoy_type_matcher_v3_NodeMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
UPB_INLINE bool envoy_service_status_v3_ClientStatusRequest_has_node(const envoy_service_status_v3_ClientStatusRequest *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct envoy_config_core_v3_Node* envoy_service_status_v3_ClientStatusRequest_node(const envoy_service_status_v3_ClientStatusRequest *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_Node*); }
UPB_INLINE struct envoy_type_matcher_v3_NodeMatcher** envoy_service_status_v3_ClientStatusRequest_mutable_node_matchers(envoy_service_status_v3_ClientStatusRequest *msg, size_t *len) {
return (struct envoy_type_matcher_v3_NodeMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
}
UPB_INLINE struct envoy_type_matcher_v3_NodeMatcher** envoy_service_status_v3_ClientStatusRequest_resize_node_matchers(envoy_service_status_v3_ClientStatusRequest *msg, size_t len, upb_arena *arena) {
return (struct envoy_type_matcher_v3_NodeMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_type_matcher_v3_NodeMatcher* envoy_service_status_v3_ClientStatusRequest_add_node_matchers(envoy_service_status_v3_ClientStatusRequest *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_NodeMatcher* sub = (struct envoy_type_matcher_v3_NodeMatcher*)_upb_msg_new(&envoy_type_matcher_v3_NodeMatcher_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
UPB_INLINE void envoy_service_status_v3_ClientStatusRequest_set_node(envoy_service_status_v3_ClientStatusRequest *msg, struct envoy_config_core_v3_Node* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_Node*) = value;
}
UPB_INLINE struct envoy_config_core_v3_Node* envoy_service_status_v3_ClientStatusRequest_mutable_node(envoy_service_status_v3_ClientStatusRequest *msg, upb_arena *arena) {
struct envoy_config_core_v3_Node* sub = (struct envoy_config_core_v3_Node*)envoy_service_status_v3_ClientStatusRequest_node(msg);
if (sub == NULL) {
sub = (struct envoy_config_core_v3_Node*)_upb_msg_new(&envoy_config_core_v3_Node_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_ClientStatusRequest_set_node(msg, sub);
}
return sub;
}
/* envoy.service.status.v3.PerXdsConfig */
UPB_INLINE envoy_service_status_v3_PerXdsConfig *envoy_service_status_v3_PerXdsConfig_new(upb_arena *arena) {
return (envoy_service_status_v3_PerXdsConfig *)_upb_msg_new(&envoy_service_status_v3_PerXdsConfig_msginit, arena);
}
UPB_INLINE envoy_service_status_v3_PerXdsConfig *envoy_service_status_v3_PerXdsConfig_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_service_status_v3_PerXdsConfig *ret = envoy_service_status_v3_PerXdsConfig_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_service_status_v3_PerXdsConfig_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_service_status_v3_PerXdsConfig *envoy_service_status_v3_PerXdsConfig_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_service_status_v3_PerXdsConfig *ret = envoy_service_status_v3_PerXdsConfig_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_service_status_v3_PerXdsConfig_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_service_status_v3_PerXdsConfig_serialize(const envoy_service_status_v3_PerXdsConfig *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_service_status_v3_PerXdsConfig_msginit, arena, len);
}
typedef enum {
envoy_service_status_v3_PerXdsConfig_per_xds_config_listener_config = 2,
envoy_service_status_v3_PerXdsConfig_per_xds_config_cluster_config = 3,
envoy_service_status_v3_PerXdsConfig_per_xds_config_route_config = 4,
envoy_service_status_v3_PerXdsConfig_per_xds_config_scoped_route_config = 5,
envoy_service_status_v3_PerXdsConfig_per_xds_config_endpoint_config = 6,
envoy_service_status_v3_PerXdsConfig_per_xds_config_NOT_SET = 0
} envoy_service_status_v3_PerXdsConfig_per_xds_config_oneofcases;
UPB_INLINE envoy_service_status_v3_PerXdsConfig_per_xds_config_oneofcases envoy_service_status_v3_PerXdsConfig_per_xds_config_case(const envoy_service_status_v3_PerXdsConfig* msg) { return (envoy_service_status_v3_PerXdsConfig_per_xds_config_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 16), int32_t); }
UPB_INLINE int32_t envoy_service_status_v3_PerXdsConfig_status(const envoy_service_status_v3_PerXdsConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
UPB_INLINE bool envoy_service_status_v3_PerXdsConfig_has_listener_config(const envoy_service_status_v3_PerXdsConfig *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 16)) == 2; }
UPB_INLINE const struct envoy_admin_v3_ListenersConfigDump* envoy_service_status_v3_PerXdsConfig_listener_config(const envoy_service_status_v3_PerXdsConfig *msg) { return UPB_READ_ONEOF(msg, const struct envoy_admin_v3_ListenersConfigDump*, UPB_SIZE(8, 8), UPB_SIZE(12, 16), 2, NULL); }
UPB_INLINE bool envoy_service_status_v3_PerXdsConfig_has_cluster_config(const envoy_service_status_v3_PerXdsConfig *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 16)) == 3; }
UPB_INLINE const struct envoy_admin_v3_ClustersConfigDump* envoy_service_status_v3_PerXdsConfig_cluster_config(const envoy_service_status_v3_PerXdsConfig *msg) { return UPB_READ_ONEOF(msg, const struct envoy_admin_v3_ClustersConfigDump*, UPB_SIZE(8, 8), UPB_SIZE(12, 16), 3, NULL); }
UPB_INLINE bool envoy_service_status_v3_PerXdsConfig_has_route_config(const envoy_service_status_v3_PerXdsConfig *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 16)) == 4; }
UPB_INLINE const struct envoy_admin_v3_RoutesConfigDump* envoy_service_status_v3_PerXdsConfig_route_config(const envoy_service_status_v3_PerXdsConfig *msg) { return UPB_READ_ONEOF(msg, const struct envoy_admin_v3_RoutesConfigDump*, UPB_SIZE(8, 8), UPB_SIZE(12, 16), 4, NULL); }
UPB_INLINE bool envoy_service_status_v3_PerXdsConfig_has_scoped_route_config(const envoy_service_status_v3_PerXdsConfig *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 16)) == 5; }
UPB_INLINE const struct envoy_admin_v3_ScopedRoutesConfigDump* envoy_service_status_v3_PerXdsConfig_scoped_route_config(const envoy_service_status_v3_PerXdsConfig *msg) { return UPB_READ_ONEOF(msg, const struct envoy_admin_v3_ScopedRoutesConfigDump*, UPB_SIZE(8, 8), UPB_SIZE(12, 16), 5, NULL); }
UPB_INLINE bool envoy_service_status_v3_PerXdsConfig_has_endpoint_config(const envoy_service_status_v3_PerXdsConfig *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 16)) == 6; }
UPB_INLINE const struct envoy_admin_v3_EndpointsConfigDump* envoy_service_status_v3_PerXdsConfig_endpoint_config(const envoy_service_status_v3_PerXdsConfig *msg) { return UPB_READ_ONEOF(msg, const struct envoy_admin_v3_EndpointsConfigDump*, UPB_SIZE(8, 8), UPB_SIZE(12, 16), 6, NULL); }
UPB_INLINE int32_t envoy_service_status_v3_PerXdsConfig_client_status(const envoy_service_status_v3_PerXdsConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t); }
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_status(envoy_service_status_v3_PerXdsConfig *msg, int32_t value) {
*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
}
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_listener_config(envoy_service_status_v3_PerXdsConfig *msg, struct envoy_admin_v3_ListenersConfigDump* value) {
UPB_WRITE_ONEOF(msg, struct envoy_admin_v3_ListenersConfigDump*, UPB_SIZE(8, 8), value, UPB_SIZE(12, 16), 2);
}
UPB_INLINE struct envoy_admin_v3_ListenersConfigDump* envoy_service_status_v3_PerXdsConfig_mutable_listener_config(envoy_service_status_v3_PerXdsConfig *msg, upb_arena *arena) {
struct envoy_admin_v3_ListenersConfigDump* sub = (struct envoy_admin_v3_ListenersConfigDump*)envoy_service_status_v3_PerXdsConfig_listener_config(msg);
if (sub == NULL) {
sub = (struct envoy_admin_v3_ListenersConfigDump*)_upb_msg_new(&envoy_admin_v3_ListenersConfigDump_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_PerXdsConfig_set_listener_config(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_cluster_config(envoy_service_status_v3_PerXdsConfig *msg, struct envoy_admin_v3_ClustersConfigDump* value) {
UPB_WRITE_ONEOF(msg, struct envoy_admin_v3_ClustersConfigDump*, UPB_SIZE(8, 8), value, UPB_SIZE(12, 16), 3);
}
UPB_INLINE struct envoy_admin_v3_ClustersConfigDump* envoy_service_status_v3_PerXdsConfig_mutable_cluster_config(envoy_service_status_v3_PerXdsConfig *msg, upb_arena *arena) {
struct envoy_admin_v3_ClustersConfigDump* sub = (struct envoy_admin_v3_ClustersConfigDump*)envoy_service_status_v3_PerXdsConfig_cluster_config(msg);
if (sub == NULL) {
sub = (struct envoy_admin_v3_ClustersConfigDump*)_upb_msg_new(&envoy_admin_v3_ClustersConfigDump_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_PerXdsConfig_set_cluster_config(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_route_config(envoy_service_status_v3_PerXdsConfig *msg, struct envoy_admin_v3_RoutesConfigDump* value) {
UPB_WRITE_ONEOF(msg, struct envoy_admin_v3_RoutesConfigDump*, UPB_SIZE(8, 8), value, UPB_SIZE(12, 16), 4);
}
UPB_INLINE struct envoy_admin_v3_RoutesConfigDump* envoy_service_status_v3_PerXdsConfig_mutable_route_config(envoy_service_status_v3_PerXdsConfig *msg, upb_arena *arena) {
struct envoy_admin_v3_RoutesConfigDump* sub = (struct envoy_admin_v3_RoutesConfigDump*)envoy_service_status_v3_PerXdsConfig_route_config(msg);
if (sub == NULL) {
sub = (struct envoy_admin_v3_RoutesConfigDump*)_upb_msg_new(&envoy_admin_v3_RoutesConfigDump_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_PerXdsConfig_set_route_config(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_scoped_route_config(envoy_service_status_v3_PerXdsConfig *msg, struct envoy_admin_v3_ScopedRoutesConfigDump* value) {
UPB_WRITE_ONEOF(msg, struct envoy_admin_v3_ScopedRoutesConfigDump*, UPB_SIZE(8, 8), value, UPB_SIZE(12, 16), 5);
}
UPB_INLINE struct envoy_admin_v3_ScopedRoutesConfigDump* envoy_service_status_v3_PerXdsConfig_mutable_scoped_route_config(envoy_service_status_v3_PerXdsConfig *msg, upb_arena *arena) {
struct envoy_admin_v3_ScopedRoutesConfigDump* sub = (struct envoy_admin_v3_ScopedRoutesConfigDump*)envoy_service_status_v3_PerXdsConfig_scoped_route_config(msg);
if (sub == NULL) {
sub = (struct envoy_admin_v3_ScopedRoutesConfigDump*)_upb_msg_new(&envoy_admin_v3_ScopedRoutesConfigDump_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_PerXdsConfig_set_scoped_route_config(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_endpoint_config(envoy_service_status_v3_PerXdsConfig *msg, struct envoy_admin_v3_EndpointsConfigDump* value) {
UPB_WRITE_ONEOF(msg, struct envoy_admin_v3_EndpointsConfigDump*, UPB_SIZE(8, 8), value, UPB_SIZE(12, 16), 6);
}
UPB_INLINE struct envoy_admin_v3_EndpointsConfigDump* envoy_service_status_v3_PerXdsConfig_mutable_endpoint_config(envoy_service_status_v3_PerXdsConfig *msg, upb_arena *arena) {
struct envoy_admin_v3_EndpointsConfigDump* sub = (struct envoy_admin_v3_EndpointsConfigDump*)envoy_service_status_v3_PerXdsConfig_endpoint_config(msg);
if (sub == NULL) {
sub = (struct envoy_admin_v3_EndpointsConfigDump*)_upb_msg_new(&envoy_admin_v3_EndpointsConfigDump_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_PerXdsConfig_set_endpoint_config(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_service_status_v3_PerXdsConfig_set_client_status(envoy_service_status_v3_PerXdsConfig *msg, int32_t value) {
*UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
}
/* envoy.service.status.v3.ClientConfig */
UPB_INLINE envoy_service_status_v3_ClientConfig *envoy_service_status_v3_ClientConfig_new(upb_arena *arena) {
return (envoy_service_status_v3_ClientConfig *)_upb_msg_new(&envoy_service_status_v3_ClientConfig_msginit, arena);
}
UPB_INLINE envoy_service_status_v3_ClientConfig *envoy_service_status_v3_ClientConfig_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_service_status_v3_ClientConfig *ret = envoy_service_status_v3_ClientConfig_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_service_status_v3_ClientConfig_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_service_status_v3_ClientConfig *envoy_service_status_v3_ClientConfig_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_service_status_v3_ClientConfig *ret = envoy_service_status_v3_ClientConfig_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_service_status_v3_ClientConfig_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_service_status_v3_ClientConfig_serialize(const envoy_service_status_v3_ClientConfig *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_service_status_v3_ClientConfig_msginit, arena, len);
}
UPB_INLINE bool envoy_service_status_v3_ClientConfig_has_node(const envoy_service_status_v3_ClientConfig *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct envoy_config_core_v3_Node* envoy_service_status_v3_ClientConfig_node(const envoy_service_status_v3_ClientConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_Node*); }
UPB_INLINE bool envoy_service_status_v3_ClientConfig_has_xds_config(const envoy_service_status_v3_ClientConfig *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
UPB_INLINE const envoy_service_status_v3_PerXdsConfig* const* envoy_service_status_v3_ClientConfig_xds_config(const envoy_service_status_v3_ClientConfig *msg, size_t *len) { return (const envoy_service_status_v3_PerXdsConfig* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
UPB_INLINE void envoy_service_status_v3_ClientConfig_set_node(envoy_service_status_v3_ClientConfig *msg, struct envoy_config_core_v3_Node* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_Node*) = value;
}
UPB_INLINE struct envoy_config_core_v3_Node* envoy_service_status_v3_ClientConfig_mutable_node(envoy_service_status_v3_ClientConfig *msg, upb_arena *arena) {
struct envoy_config_core_v3_Node* sub = (struct envoy_config_core_v3_Node*)envoy_service_status_v3_ClientConfig_node(msg);
if (sub == NULL) {
sub = (struct envoy_config_core_v3_Node*)_upb_msg_new(&envoy_config_core_v3_Node_msginit, arena);
if (!sub) return NULL;
envoy_service_status_v3_ClientConfig_set_node(msg, sub);
}
return sub;
}
UPB_INLINE envoy_service_status_v3_PerXdsConfig** envoy_service_status_v3_ClientConfig_mutable_xds_config(envoy_service_status_v3_ClientConfig *msg, size_t *len) {
return (envoy_service_status_v3_PerXdsConfig**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
}
UPB_INLINE envoy_service_status_v3_PerXdsConfig** envoy_service_status_v3_ClientConfig_resize_xds_config(envoy_service_status_v3_ClientConfig *msg, size_t len, upb_arena *arena) {
return (envoy_service_status_v3_PerXdsConfig**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_service_status_v3_PerXdsConfig* envoy_service_status_v3_ClientConfig_add_xds_config(envoy_service_status_v3_ClientConfig *msg, upb_arena *arena) {
struct envoy_service_status_v3_PerXdsConfig* sub = (struct envoy_service_status_v3_PerXdsConfig*)_upb_msg_new(&envoy_service_status_v3_PerXdsConfig_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
/* envoy.service.status.v3.ClientStatusResponse */
UPB_INLINE envoy_service_status_v3_ClientStatusResponse *envoy_service_status_v3_ClientStatusResponse_new(upb_arena *arena) {
return (envoy_service_status_v3_ClientStatusResponse *)_upb_msg_new(&envoy_service_status_v3_ClientStatusResponse_msginit, arena);
}
UPB_INLINE envoy_service_status_v3_ClientStatusResponse *envoy_service_status_v3_ClientStatusResponse_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_service_status_v3_ClientStatusResponse *ret = envoy_service_status_v3_ClientStatusResponse_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_service_status_v3_ClientStatusResponse_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_service_status_v3_ClientStatusResponse *envoy_service_status_v3_ClientStatusResponse_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_service_status_v3_ClientStatusResponse *ret = envoy_service_status_v3_ClientStatusResponse_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_service_status_v3_ClientStatusResponse_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_service_status_v3_ClientStatusResponse_serialize(const envoy_service_status_v3_ClientStatusResponse *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_service_status_v3_ClientStatusResponse_msginit, arena, len);
}
UPB_INLINE bool envoy_service_status_v3_ClientStatusResponse_has_config(const envoy_service_status_v3_ClientStatusResponse *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
UPB_INLINE const envoy_service_status_v3_ClientConfig* const* envoy_service_status_v3_ClientStatusResponse_config(const envoy_service_status_v3_ClientStatusResponse *msg, size_t *len) { return (const envoy_service_status_v3_ClientConfig* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
UPB_INLINE envoy_service_status_v3_ClientConfig** envoy_service_status_v3_ClientStatusResponse_mutable_config(envoy_service_status_v3_ClientStatusResponse *msg, size_t *len) {
return (envoy_service_status_v3_ClientConfig**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
}
UPB_INLINE envoy_service_status_v3_ClientConfig** envoy_service_status_v3_ClientStatusResponse_resize_config(envoy_service_status_v3_ClientStatusResponse *msg, size_t len, upb_arena *arena) {
return (envoy_service_status_v3_ClientConfig**)_upb_array_resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_service_status_v3_ClientConfig* envoy_service_status_v3_ClientStatusResponse_add_config(envoy_service_status_v3_ClientStatusResponse *msg, upb_arena *arena) {
struct envoy_service_status_v3_ClientConfig* sub = (struct envoy_service_status_v3_ClientConfig*)_upb_msg_new(&envoy_service_status_v3_ClientConfig_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_SERVICE_STATUS_V3_CSDS_PROTO_UPB_H_ */

@ -0,0 +1,36 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/node.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/type/matcher/v3/node.upb.h"
#include "envoy/type/matcher/v3/string.upb.h"
#include "envoy/type/matcher/v3/struct.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_type_matcher_v3_NodeMatcher_submsgs[2] = {
&envoy_type_matcher_v3_StringMatcher_msginit,
&envoy_type_matcher_v3_StructMatcher_msginit,
};
static const upb_msglayout_field envoy_type_matcher_v3_NodeMatcher__fields[2] = {
{1, UPB_SIZE(4, 8), 1, 0, 11, 1},
{2, UPB_SIZE(8, 16), 0, 1, 11, 3},
};
const upb_msglayout envoy_type_matcher_v3_NodeMatcher_msginit = {
&envoy_type_matcher_v3_NodeMatcher_submsgs[0],
&envoy_type_matcher_v3_NodeMatcher__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
#include "upb/port_undef.inc"

@ -0,0 +1,90 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/node.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_TYPE_MATCHER_V3_NODE_PROTO_UPB_H_
#define ENVOY_TYPE_MATCHER_V3_NODE_PROTO_UPB_H_
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/decode_fast.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_type_matcher_v3_NodeMatcher;
typedef struct envoy_type_matcher_v3_NodeMatcher envoy_type_matcher_v3_NodeMatcher;
extern const upb_msglayout envoy_type_matcher_v3_NodeMatcher_msginit;
struct envoy_type_matcher_v3_StringMatcher;
struct envoy_type_matcher_v3_StructMatcher;
extern const upb_msglayout envoy_type_matcher_v3_StringMatcher_msginit;
extern const upb_msglayout envoy_type_matcher_v3_StructMatcher_msginit;
/* envoy.type.matcher.v3.NodeMatcher */
UPB_INLINE envoy_type_matcher_v3_NodeMatcher *envoy_type_matcher_v3_NodeMatcher_new(upb_arena *arena) {
return (envoy_type_matcher_v3_NodeMatcher *)_upb_msg_new(&envoy_type_matcher_v3_NodeMatcher_msginit, arena);
}
UPB_INLINE envoy_type_matcher_v3_NodeMatcher *envoy_type_matcher_v3_NodeMatcher_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_type_matcher_v3_NodeMatcher *ret = envoy_type_matcher_v3_NodeMatcher_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_type_matcher_v3_NodeMatcher_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_type_matcher_v3_NodeMatcher *envoy_type_matcher_v3_NodeMatcher_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_type_matcher_v3_NodeMatcher *ret = envoy_type_matcher_v3_NodeMatcher_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_type_matcher_v3_NodeMatcher_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_type_matcher_v3_NodeMatcher_serialize(const envoy_type_matcher_v3_NodeMatcher *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_type_matcher_v3_NodeMatcher_msginit, arena, len);
}
UPB_INLINE bool envoy_type_matcher_v3_NodeMatcher_has_node_id(const envoy_type_matcher_v3_NodeMatcher *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct envoy_type_matcher_v3_StringMatcher* envoy_type_matcher_v3_NodeMatcher_node_id(const envoy_type_matcher_v3_NodeMatcher *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_matcher_v3_StringMatcher*); }
UPB_INLINE bool envoy_type_matcher_v3_NodeMatcher_has_node_metadatas(const envoy_type_matcher_v3_NodeMatcher *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
UPB_INLINE const struct envoy_type_matcher_v3_StructMatcher* const* envoy_type_matcher_v3_NodeMatcher_node_metadatas(const envoy_type_matcher_v3_NodeMatcher *msg, size_t *len) { return (const struct envoy_type_matcher_v3_StructMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
UPB_INLINE void envoy_type_matcher_v3_NodeMatcher_set_node_id(envoy_type_matcher_v3_NodeMatcher *msg, struct envoy_type_matcher_v3_StringMatcher* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_matcher_v3_StringMatcher*) = value;
}
UPB_INLINE struct envoy_type_matcher_v3_StringMatcher* envoy_type_matcher_v3_NodeMatcher_mutable_node_id(envoy_type_matcher_v3_NodeMatcher *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_StringMatcher* sub = (struct envoy_type_matcher_v3_StringMatcher*)envoy_type_matcher_v3_NodeMatcher_node_id(msg);
if (sub == NULL) {
sub = (struct envoy_type_matcher_v3_StringMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StringMatcher_msginit, arena);
if (!sub) return NULL;
envoy_type_matcher_v3_NodeMatcher_set_node_id(msg, sub);
}
return sub;
}
UPB_INLINE struct envoy_type_matcher_v3_StructMatcher** envoy_type_matcher_v3_NodeMatcher_mutable_node_metadatas(envoy_type_matcher_v3_NodeMatcher *msg, size_t *len) {
return (struct envoy_type_matcher_v3_StructMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
}
UPB_INLINE struct envoy_type_matcher_v3_StructMatcher** envoy_type_matcher_v3_NodeMatcher_resize_node_metadatas(envoy_type_matcher_v3_NodeMatcher *msg, size_t len, upb_arena *arena) {
return (struct envoy_type_matcher_v3_StructMatcher**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_type_matcher_v3_StructMatcher* envoy_type_matcher_v3_NodeMatcher_add_node_metadatas(envoy_type_matcher_v3_NodeMatcher *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_StructMatcher* sub = (struct envoy_type_matcher_v3_StructMatcher*)_upb_msg_new(&envoy_type_matcher_v3_StructMatcher_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_TYPE_MATCHER_V3_NODE_PROTO_UPB_H_ */

@ -0,0 +1,46 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/struct.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/type/matcher/v3/struct.upb.h"
#include "envoy/type/matcher/v3/value.upb.h"
#include "udpa/annotations/status.upb.h"
#include "udpa/annotations/versioning.upb.h"
#include "validate/validate.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_type_matcher_v3_StructMatcher_submsgs[2] = {
&envoy_type_matcher_v3_StructMatcher_PathSegment_msginit,
&envoy_type_matcher_v3_ValueMatcher_msginit,
};
static const upb_msglayout_field envoy_type_matcher_v3_StructMatcher__fields[2] = {
{2, UPB_SIZE(8, 16), 0, 0, 11, 3},
{3, UPB_SIZE(4, 8), 1, 1, 11, 1},
};
const upb_msglayout envoy_type_matcher_v3_StructMatcher_msginit = {
&envoy_type_matcher_v3_StructMatcher_submsgs[0],
&envoy_type_matcher_v3_StructMatcher__fields[0],
UPB_SIZE(16, 24), 2, false, 255,
};
static const upb_msglayout_field envoy_type_matcher_v3_StructMatcher_PathSegment__fields[1] = {
{1, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 0, 9, 1},
};
const upb_msglayout envoy_type_matcher_v3_StructMatcher_PathSegment_msginit = {
NULL,
&envoy_type_matcher_v3_StructMatcher_PathSegment__fields[0],
UPB_SIZE(16, 32), 1, false, 255,
};
#include "upb/port_undef.inc"

@ -0,0 +1,124 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/struct.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_TYPE_MATCHER_V3_STRUCT_PROTO_UPB_H_
#define ENVOY_TYPE_MATCHER_V3_STRUCT_PROTO_UPB_H_
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/decode_fast.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_type_matcher_v3_StructMatcher;
struct envoy_type_matcher_v3_StructMatcher_PathSegment;
typedef struct envoy_type_matcher_v3_StructMatcher envoy_type_matcher_v3_StructMatcher;
typedef struct envoy_type_matcher_v3_StructMatcher_PathSegment envoy_type_matcher_v3_StructMatcher_PathSegment;
extern const upb_msglayout envoy_type_matcher_v3_StructMatcher_msginit;
extern const upb_msglayout envoy_type_matcher_v3_StructMatcher_PathSegment_msginit;
struct envoy_type_matcher_v3_ValueMatcher;
extern const upb_msglayout envoy_type_matcher_v3_ValueMatcher_msginit;
/* envoy.type.matcher.v3.StructMatcher */
UPB_INLINE envoy_type_matcher_v3_StructMatcher *envoy_type_matcher_v3_StructMatcher_new(upb_arena *arena) {
return (envoy_type_matcher_v3_StructMatcher *)_upb_msg_new(&envoy_type_matcher_v3_StructMatcher_msginit, arena);
}
UPB_INLINE envoy_type_matcher_v3_StructMatcher *envoy_type_matcher_v3_StructMatcher_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_type_matcher_v3_StructMatcher *ret = envoy_type_matcher_v3_StructMatcher_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_type_matcher_v3_StructMatcher_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_type_matcher_v3_StructMatcher *envoy_type_matcher_v3_StructMatcher_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_type_matcher_v3_StructMatcher *ret = envoy_type_matcher_v3_StructMatcher_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_type_matcher_v3_StructMatcher_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_type_matcher_v3_StructMatcher_serialize(const envoy_type_matcher_v3_StructMatcher *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_type_matcher_v3_StructMatcher_msginit, arena, len);
}
UPB_INLINE bool envoy_type_matcher_v3_StructMatcher_has_path(const envoy_type_matcher_v3_StructMatcher *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
UPB_INLINE const envoy_type_matcher_v3_StructMatcher_PathSegment* const* envoy_type_matcher_v3_StructMatcher_path(const envoy_type_matcher_v3_StructMatcher *msg, size_t *len) { return (const envoy_type_matcher_v3_StructMatcher_PathSegment* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
UPB_INLINE bool envoy_type_matcher_v3_StructMatcher_has_value(const envoy_type_matcher_v3_StructMatcher *msg) { return _upb_hasbit(msg, 1); }
UPB_INLINE const struct envoy_type_matcher_v3_ValueMatcher* envoy_type_matcher_v3_StructMatcher_value(const envoy_type_matcher_v3_StructMatcher *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_matcher_v3_ValueMatcher*); }
UPB_INLINE envoy_type_matcher_v3_StructMatcher_PathSegment** envoy_type_matcher_v3_StructMatcher_mutable_path(envoy_type_matcher_v3_StructMatcher *msg, size_t *len) {
return (envoy_type_matcher_v3_StructMatcher_PathSegment**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
}
UPB_INLINE envoy_type_matcher_v3_StructMatcher_PathSegment** envoy_type_matcher_v3_StructMatcher_resize_path(envoy_type_matcher_v3_StructMatcher *msg, size_t len, upb_arena *arena) {
return (envoy_type_matcher_v3_StructMatcher_PathSegment**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
}
UPB_INLINE struct envoy_type_matcher_v3_StructMatcher_PathSegment* envoy_type_matcher_v3_StructMatcher_add_path(envoy_type_matcher_v3_StructMatcher *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_StructMatcher_PathSegment* sub = (struct envoy_type_matcher_v3_StructMatcher_PathSegment*)_upb_msg_new(&envoy_type_matcher_v3_StructMatcher_PathSegment_msginit, arena);
bool ok = _upb_array_append_accessor2(
msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
if (!ok) return NULL;
return sub;
}
UPB_INLINE void envoy_type_matcher_v3_StructMatcher_set_value(envoy_type_matcher_v3_StructMatcher *msg, struct envoy_type_matcher_v3_ValueMatcher* value) {
_upb_sethas(msg, 1);
*UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_matcher_v3_ValueMatcher*) = value;
}
UPB_INLINE struct envoy_type_matcher_v3_ValueMatcher* envoy_type_matcher_v3_StructMatcher_mutable_value(envoy_type_matcher_v3_StructMatcher *msg, upb_arena *arena) {
struct envoy_type_matcher_v3_ValueMatcher* sub = (struct envoy_type_matcher_v3_ValueMatcher*)envoy_type_matcher_v3_StructMatcher_value(msg);
if (sub == NULL) {
sub = (struct envoy_type_matcher_v3_ValueMatcher*)_upb_msg_new(&envoy_type_matcher_v3_ValueMatcher_msginit, arena);
if (!sub) return NULL;
envoy_type_matcher_v3_StructMatcher_set_value(msg, sub);
}
return sub;
}
/* envoy.type.matcher.v3.StructMatcher.PathSegment */
UPB_INLINE envoy_type_matcher_v3_StructMatcher_PathSegment *envoy_type_matcher_v3_StructMatcher_PathSegment_new(upb_arena *arena) {
return (envoy_type_matcher_v3_StructMatcher_PathSegment *)_upb_msg_new(&envoy_type_matcher_v3_StructMatcher_PathSegment_msginit, arena);
}
UPB_INLINE envoy_type_matcher_v3_StructMatcher_PathSegment *envoy_type_matcher_v3_StructMatcher_PathSegment_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_type_matcher_v3_StructMatcher_PathSegment *ret = envoy_type_matcher_v3_StructMatcher_PathSegment_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_type_matcher_v3_StructMatcher_PathSegment_msginit, arena)) ? ret : NULL;
}
UPB_INLINE envoy_type_matcher_v3_StructMatcher_PathSegment *envoy_type_matcher_v3_StructMatcher_PathSegment_parse_ex(const char *buf, size_t size,
upb_arena *arena, int options) {
envoy_type_matcher_v3_StructMatcher_PathSegment *ret = envoy_type_matcher_v3_StructMatcher_PathSegment_new(arena);
return (ret && _upb_decode(buf, size, ret, &envoy_type_matcher_v3_StructMatcher_PathSegment_msginit, arena, options))
? ret : NULL;
}
UPB_INLINE char *envoy_type_matcher_v3_StructMatcher_PathSegment_serialize(const envoy_type_matcher_v3_StructMatcher_PathSegment *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_type_matcher_v3_StructMatcher_PathSegment_msginit, arena, len);
}
typedef enum {
envoy_type_matcher_v3_StructMatcher_PathSegment_segment_key = 1,
envoy_type_matcher_v3_StructMatcher_PathSegment_segment_NOT_SET = 0
} envoy_type_matcher_v3_StructMatcher_PathSegment_segment_oneofcases;
UPB_INLINE envoy_type_matcher_v3_StructMatcher_PathSegment_segment_oneofcases envoy_type_matcher_v3_StructMatcher_PathSegment_segment_case(const envoy_type_matcher_v3_StructMatcher_PathSegment* msg) { return (envoy_type_matcher_v3_StructMatcher_PathSegment_segment_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(8, 16), int32_t); }
UPB_INLINE bool envoy_type_matcher_v3_StructMatcher_PathSegment_has_key(const envoy_type_matcher_v3_StructMatcher_PathSegment *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 1; }
UPB_INLINE upb_strview envoy_type_matcher_v3_StructMatcher_PathSegment_key(const envoy_type_matcher_v3_StructMatcher_PathSegment *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 1, upb_strview_make("", strlen(""))); }
UPB_INLINE void envoy_type_matcher_v3_StructMatcher_PathSegment_set_key(envoy_type_matcher_v3_StructMatcher_PathSegment *msg, upb_strview value) {
UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 1);
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_TYPE_MATCHER_V3_STRUCT_PROTO_UPB_H_ */

@ -0,0 +1,354 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/admin/v3/config_dump.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/admin/v3/config_dump.upbdefs.h"
extern upb_def_init envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit;
extern upb_def_init google_protobuf_any_proto_upbdefinit;
extern upb_def_init google_protobuf_timestamp_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern const upb_msglayout envoy_admin_v3_ConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_UpdateFailureState_msginit;
extern const upb_msglayout envoy_admin_v3_BootstrapConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_ListenersConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_ListenersConfigDump_StaticListener_msginit;
extern const upb_msglayout envoy_admin_v3_ListenersConfigDump_DynamicListenerState_msginit;
extern const upb_msglayout envoy_admin_v3_ListenersConfigDump_DynamicListener_msginit;
extern const upb_msglayout envoy_admin_v3_ClustersConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_ClustersConfigDump_StaticCluster_msginit;
extern const upb_msglayout envoy_admin_v3_ClustersConfigDump_DynamicCluster_msginit;
extern const upb_msglayout envoy_admin_v3_RoutesConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_msginit;
extern const upb_msglayout envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_msginit;
extern const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_msginit;
extern const upb_msglayout envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_msginit;
extern const upb_msglayout envoy_admin_v3_SecretsConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_SecretsConfigDump_DynamicSecret_msginit;
extern const upb_msglayout envoy_admin_v3_SecretsConfigDump_StaticSecret_msginit;
extern const upb_msglayout envoy_admin_v3_EndpointsConfigDump_msginit;
extern const upb_msglayout envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_msginit;
extern const upb_msglayout envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_msginit;
static const upb_msglayout *layouts[22] = {
&envoy_admin_v3_ConfigDump_msginit,
&envoy_admin_v3_UpdateFailureState_msginit,
&envoy_admin_v3_BootstrapConfigDump_msginit,
&envoy_admin_v3_ListenersConfigDump_msginit,
&envoy_admin_v3_ListenersConfigDump_StaticListener_msginit,
&envoy_admin_v3_ListenersConfigDump_DynamicListenerState_msginit,
&envoy_admin_v3_ListenersConfigDump_DynamicListener_msginit,
&envoy_admin_v3_ClustersConfigDump_msginit,
&envoy_admin_v3_ClustersConfigDump_StaticCluster_msginit,
&envoy_admin_v3_ClustersConfigDump_DynamicCluster_msginit,
&envoy_admin_v3_RoutesConfigDump_msginit,
&envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_msginit,
&envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_msginit,
&envoy_admin_v3_ScopedRoutesConfigDump_msginit,
&envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_msginit,
&envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_msginit,
&envoy_admin_v3_SecretsConfigDump_msginit,
&envoy_admin_v3_SecretsConfigDump_DynamicSecret_msginit,
&envoy_admin_v3_SecretsConfigDump_StaticSecret_msginit,
&envoy_admin_v3_EndpointsConfigDump_msginit,
&envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_msginit,
&envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_msginit,
};
static const char descriptor[6802] = {'\n', ' ', 'e', 'n', 'v', 'o', 'y', '/', 'a', 'd', 'm', 'i', 'n', '/', 'v', '3', '/', 'c', 'o', 'n', 'f', 'i', 'g', '_', 'd',
'u', 'm', 'p', '.', 'p', 'r', 'o', 't', 'o', '\022', '\016', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3',
'\032', ')', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '/',
'v', '3', '/', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'p', 'r', 'o', 't', 'o', '\032', '\031', 'g', 'o', 'o', 'g', 'l',
'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 'a', 'n', 'y', '.', 'p', 'r', 'o', 't', 'o', '\032', '\037', 'g', 'o', 'o',
'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 't', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', '.', 'p', 'r',
'o', 't', 'o', '\032', '\035', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a',
't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o',
'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\"', 'c', '\n', '\n', 'C', 'o',
'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\022', '.', '\n', '\007', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\001', ' ', '\003', '(', '\013',
'2', '\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\007', 'c',
'o', 'n', 'f', 'i', 'g', 's', ':', '%', '\232', '\305', '\210', '\036', ' ', '\n', '\036', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i',
'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\"', '\225', '\002', '\n', '\022',
'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e', 'S', 't', 'a', 't', 'e', '\022', 'G', '\n', '\024', 'f', 'a', 'i',
'l', 'e', 'd', '_', 'c', 'o', 'n', 'f', 'i', 'g', 'u', 'r', 'a', 't', 'i', 'o', 'n', '\030', '\001', ' ', '\001', '(', '\013', '2', '\024',
'.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\023', 'f', 'a', 'i',
'l', 'e', 'd', 'C', 'o', 'n', 'f', 'i', 'g', 'u', 'r', 'a', 't', 'i', 'o', 'n', '\022', 'J', '\n', '\023', 'l', 'a', 's', 't', '_',
'u', 'p', 'd', 'a', 't', 'e', '_', 'a', 't', 't', 'e', 'm', 'p', 't', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o',
'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\021',
'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'A', 't', 't', 'e', 'm', 'p', 't', '\022', '\030', '\n', '\007', 'd', 'e', 't', 'a',
'i', 'l', 's', '\030', '\003', ' ', '\001', '(', '\t', 'R', '\007', 'd', 'e', 't', 'a', 'i', 'l', 's', '\022', '!', '\n', '\014', 'v', 'e', 'r',
's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\004', ' ', '\001', '(', '\t', 'R', '\013', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'I',
'n', 'f', 'o', ':', '-', '\232', '\305', '\210', '\036', '(', '\n', '&', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v',
'2', 'a', 'l', 'p', 'h', 'a', '.', 'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e', 'S', 't', 'a', 't', 'e',
'\"', '\310', '\001', '\n', '\023', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\022',
'B', '\n', '\t', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '\030', '\001', ' ', '\001', '(', '\013', '2', '$', '.', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'B', 'o', 'o',
't', 's', 't', 'r', 'a', 'p', 'R', '\t', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '\022', '=', '\n', '\014', 'l', 'a', 's', 't',
'_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p',
'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p',
'd', 'a', 't', 'e', 'd', ':', '.', '\232', '\305', '\210', '\036', ')', '\n', '\'', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n',
'.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', 'C', 'o', 'n', 'f', 'i', 'g', 'D',
'u', 'm', 'p', '\"', '\363', '\t', '\n', '\023', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u',
'm', 'p', '\022', '!', '\n', '\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\001', ' ', '\001', '(', '\t', 'R',
'\013', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', ']', '\n', '\020', 's', 't', 'a', 't', 'i', 'c', '_', 'l', 'i',
's', 't', 'e', 'n', 'e', 'r', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', '2', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm',
'i', 'n', '.', 'v', '3', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p',
'.', 'S', 't', 'a', 't', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 'R', '\017', 's', 't', 'a', 't', 'i', 'c', 'L', 'i',
's', 't', 'e', 'n', 'e', 'r', 's', '\022', '`', '\n', '\021', 'd', 'y', 'n', 'a', 'm', 'i', 'c', '_', 'l', 'i', 's', 't', 'e', 'n',
'e', 'r', 's', '\030', '\003', ' ', '\003', '(', '\013', '2', '3', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v',
'3', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n',
'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 'R', '\020', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'L', 'i', 's', 't',
'e', 'n', 'e', 'r', 's', '\032', '\300', '\001', '\n', '\016', 'S', 't', 'a', 't', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', '\022',
'0', '\n', '\010', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '\030', '\001', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l',
'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\010', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '\022',
'=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g',
'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R',
'\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', ':', '=', '\232', '\305', '\210', '\036', '8', '\n', '6', 'e', 'n', 'v', 'o',
'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's',
'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r',
'\032', '\357', '\001', '\n', '\024', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 'S', 't', 'a', 't', 'e',
'\022', '!', '\n', '\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\013', 'v',
'e', 'r', 's', 'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', '0', '\n', '\010', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '\030', '\002', ' ',
'\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y',
'R', '\010', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e',
'd', '\030', '\003', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f',
'.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', ':', 'C',
'\232', '\305', '\210', '\036', '>', '\n', '<', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h',
'a', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n',
'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 'S', 't', 'a', 't', 'e', '\032', '\222', '\004', '\n', '\017', 'D', 'y', 'n',
'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', '\022', '\022', '\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(',
'\t', 'R', '\004', 'n', 'a', 'm', 'e', '\022', '[', '\n', '\014', 'a', 'c', 't', 'i', 'v', 'e', '_', 's', 't', 'a', 't', 'e', '\030', '\002',
' ', '\001', '(', '\013', '2', '8', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'L', 'i', 's',
't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'L',
'i', 's', 't', 'e', 'n', 'e', 'r', 'S', 't', 'a', 't', 'e', 'R', '\013', 'a', 'c', 't', 'i', 'v', 'e', 'S', 't', 'a', 't', 'e',
'\022', ']', '\n', '\r', 'w', 'a', 'r', 'm', 'i', 'n', 'g', '_', 's', 't', 'a', 't', 'e', '\030', '\003', ' ', '\001', '(', '\013', '2', '8',
'.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's',
'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e',
'r', 'S', 't', 'a', 't', 'e', 'R', '\014', 'w', 'a', 'r', 'm', 'i', 'n', 'g', 'S', 't', 'a', 't', 'e', '\022', '_', '\n', '\016', 'd',
'r', 'a', 'i', 'n', 'i', 'n', 'g', '_', 's', 't', 'a', 't', 'e', '\030', '\004', ' ', '\001', '(', '\013', '2', '8', '.', 'e', 'n', 'v',
'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f',
'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 'S', 't', 'a',
't', 'e', 'R', '\r', 'd', 'r', 'a', 'i', 'n', 'i', 'n', 'g', 'S', 't', 'a', 't', 'e', '\022', 'C', '\n', '\013', 'e', 'r', 'r', 'o',
'r', '_', 's', 't', 'a', 't', 'e', '\030', '\005', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm',
'i', 'n', '.', 'v', '3', '.', 'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e', 'S', 't', 'a', 't', 'e', 'R',
'\n', 'e', 'r', 'r', 'o', 'r', 'S', 't', 'a', 't', 'e', '\022', 'I', '\n', '\r', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a',
't', 'u', 's', '\030', '\006', ' ', '\001', '(', '\016', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v',
'3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'S', 't', 'a', 't', 'u', 's', 'R', '\014', 'c',
'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', ':', '>', '\232', '\305', '\210', '\036', '9', '\n', '7', 'e', 'n', 'v', 'o', 'y',
'.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C',
'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r',
':', '.', '\232', '\305', '\210', '\036', ')', '\n', '\'', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l',
'p', 'h', 'a', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\"', '\312',
'\007', '\n', '\022', 'C', 'l', 'u', 's', 't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\022', '!', '\n', '\014',
'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\013', 'v', 'e', 'r', 's', 'i',
'o', 'n', 'I', 'n', 'f', 'o', '\022', 'Y', '\n', '\017', 's', 't', 'a', 't', 'i', 'c', '_', 'c', 'l', 'u', 's', 't', 'e', 'r', 's',
'\030', '\002', ' ', '\003', '(', '\013', '2', '0', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'C',
'l', 'u', 's', 't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i', 'c', 'C',
'l', 'u', 's', 't', 'e', 'r', 'R', '\016', 's', 't', 'a', 't', 'i', 'c', 'C', 'l', 'u', 's', 't', 'e', 'r', 's', '\022', 'i', '\n',
'\027', 'd', 'y', 'n', 'a', 'm', 'i', 'c', '_', 'a', 'c', 't', 'i', 'v', 'e', '_', 'c', 'l', 'u', 's', 't', 'e', 'r', 's', '\030',
'\003', ' ', '\003', '(', '\013', '2', '1', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'C', 'l',
'u', 's', 't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'C',
'l', 'u', 's', 't', 'e', 'r', 'R', '\025', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'A', 'c', 't', 'i', 'v', 'e', 'C', 'l', 'u', 's',
't', 'e', 'r', 's', '\022', 'k', '\n', '\030', 'd', 'y', 'n', 'a', 'm', 'i', 'c', '_', 'w', 'a', 'r', 'm', 'i', 'n', 'g', '_', 'c',
'l', 'u', 's', 't', 'e', 'r', 's', '\030', '\004', ' ', '\003', '(', '\013', '2', '1', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm',
'i', 'n', '.', 'v', '3', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.',
'D', 'y', 'n', 'a', 'm', 'i', 'c', 'C', 'l', 'u', 's', 't', 'e', 'r', 'R', '\026', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'W', 'a',
'r', 'm', 'i', 'n', 'g', 'C', 'l', 'u', 's', 't', 'e', 'r', 's', '\032', '\273', '\001', '\n', '\r', 'S', 't', 'a', 't', 'i', 'c', 'C',
'l', 'u', 's', 't', 'e', 'r', '\022', '.', '\n', '\007', 'c', 'l', 'u', 's', 't', 'e', 'r', '\030', '\001', ' ', '\001', '(', '\013', '2', '\024',
'.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\007', 'c', 'l', 'u',
's', 't', 'e', 'r', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(',
'\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's',
't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', ':', ';', '\232', '\305', '\210', '\036', '6', '\n',
'4', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'C', 'l', 'u', 's',
't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i', 'c', 'C', 'l', 'u', 's',
't', 'e', 'r', '\032', '\360', '\002', '\n', '\016', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'C', 'l', 'u', 's', 't', 'e', 'r', '\022', '!', '\n',
'\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\013', 'v', 'e', 'r', 's',
'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', '.', '\n', '\007', 'c', 'l', 'u', 's', 't', 'e', 'r', '\030', '\002', ' ', '\001', '(', '\013', '2',
'\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\007', 'c', 'l',
'u', 's', 't', 'e', 'r', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\003', ' ', '\001',
'(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e',
's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', '\022', 'C', '\n', '\013', 'e', 'r', 'r',
'o', 'r', '_', 's', 't', 'a', 't', 'e', '\030', '\004', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd',
'm', 'i', 'n', '.', 'v', '3', '.', 'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e', 'S', 't', 'a', 't', 'e',
'R', '\n', 'e', 'r', 'r', 'o', 'r', 'S', 't', 'a', 't', 'e', '\022', 'I', '\n', '\r', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't',
'a', 't', 'u', 's', '\030', '\005', ' ', '\001', '(', '\016', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.',
'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'S', 't', 'a', 't', 'u', 's', 'R', '\014',
'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', ':', '<', '\232', '\305', '\210', '\036', '7', '\n', '5', 'e', 'n', 'v', 'o',
'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 's', 'C',
'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'C', 'l', 'u', 's', 't', 'e', 'r', ':',
'-', '\232', '\305', '\210', '\036', '(', '\n', '&', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p',
'h', 'a', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\"', '\335', '\006', '\n',
'\020', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\022', 'd', '\n', '\024', 's', 't', 'a', 't',
'i', 'c', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', '2', '.',
'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f',
'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 'R',
'\022', 's', 't', 'a', 't', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\022', 'g', '\n', '\025', 'd', 'y',
'n', 'a', 'm', 'i', 'c', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\003', ' ', '\003', '(', '\013',
'2', '3', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'R', 'o', 'u', 't', 'e', 's', 'C',
'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n',
'f', 'i', 'g', 'R', '\023', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\032',
'\312', '\001', '\n', '\021', 'S', 't', 'a', 't', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '7', '\n', '\014',
'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\001', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g',
'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\013', 'r', 'o', 'u', 't', 'e', 'C', 'o', 'n',
'f', 'i', 'g', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(', '\013',
'2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't',
'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', ':', '=', '\232', '\305', '\210', '\036', '8', '\n', '6',
'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'R', 'o', 'u', 't', 'e',
's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o',
'n', 'f', 'i', 'g', '\032', '\377', '\002', '\n', '\022', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f',
'i', 'g', '\022', '!', '\n', '\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\001', ' ', '\001', '(', '\t', 'R',
'\013', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', '7', '\n', '\014', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n',
'f', 'i', 'g', '\030', '\002', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b',
'u', 'f', '.', 'A', 'n', 'y', 'R', '\013', 'r', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '=', '\n', '\014', 'l', 'a',
's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\003', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e',
'.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't',
'U', 'p', 'd', 'a', 't', 'e', 'd', '\022', 'C', '\n', '\013', 'e', 'r', 'r', 'o', 'r', '_', 's', 't', 'a', 't', 'e', '\030', '\004', ' ',
'\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'U', 'p', 'd', 'a',
't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e', 'S', 't', 'a', 't', 'e', 'R', '\n', 'e', 'r', 'r', 'o', 'r', 'S', 't', 'a', 't',
'e', '\022', 'I', '\n', '\r', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a', 't', 'u', 's', '\030', '\005', ' ', '\001', '(', '\016', '2',
'$', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'R', 'e',
's', 'o', 'u', 'r', 'c', 'e', 'S', 't', 'a', 't', 'u', 's', 'R', '\014', 'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u',
's', ':', '>', '\232', '\305', '\210', '\036', '9', '\n', '7', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a',
'l', 'p', 'h', 'a', '.', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n',
'a', 'm', 'i', 'c', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', ':', '+', '\232', '\305', '\210', '\036', '&', '\n', '$', 'e',
'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'R', 'o', 'u', 't', 'e', 's',
'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\"', '\214', '\010', '\n', '\026', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't',
'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\022', '~', '\n', '\033', 'i', 'n', 'l', 'i', 'n', 'e', '_', 's', 'c',
'o', 'p', 'e', 'd', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\001', ' ', '\003', '(', '\013', '2',
'?', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o',
'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'I', 'n', 'l', 'i', 'n', 'e', 'S', 'c', 'o', 'p',
'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', 'R', '\030', 'i', 'n', 'l', 'i', 'n', 'e', 'S', 'c', 'o',
'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\022', '\201', '\001', '\n', '\034', 'd', 'y', 'n', 'a', 'm',
'i', 'c', '_', 's', 'c', 'o', 'p', 'e', 'd', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\002',
' ', '\003', '(', '\013', '2', '@', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'S', 'c', 'o',
'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm',
'i', 'c', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', 'R', '\031', 'd', 'y', 'n',
'a', 'm', 'i', 'c', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\032', '\201', '\002',
'\n', '\030', 'I', 'n', 'l', 'i', 'n', 'e', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g',
's', '\022', '\022', '\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\004', 'n', 'a', 'm', 'e', '\022', 'F', '\n', '\024',
's', 'c', 'o', 'p', 'e', 'd', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\002', ' ', '\003', '(',
'\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\022',
's', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\022', '=', '\n', '\014', 'l', 'a', 's',
't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\003', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.',
'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U',
'p', 'd', 'a', 't', 'e', 'd', ':', 'J', '\232', '\305', '\210', '\036', 'E', '\n', 'C', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i',
'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n',
'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'I', 'n', 'l', 'i', 'n', 'e', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e',
'C', 'o', 'n', 'f', 'i', 'g', 's', '\032', '\266', '\003', '\n', '\031', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'S', 'c', 'o', 'p', 'e', 'd',
'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\022', '\022', '\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(',
'\t', 'R', '\004', 'n', 'a', 'm', 'e', '\022', '!', '\n', '\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\002',
' ', '\001', '(', '\t', 'R', '\013', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', 'F', '\n', '\024', 's', 'c', 'o', 'p',
'e', 'd', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\003', ' ', '\003', '(', '\013', '2', '\024', '.',
'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\022', 's', 'c', 'o', 'p',
'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p',
'd', 'a', 't', 'e', 'd', '\030', '\004', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't',
'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't',
'e', 'd', '\022', 'C', '\n', '\013', 'e', 'r', 'r', 'o', 'r', '_', 's', 't', 'a', 't', 'e', '\030', '\005', ' ', '\001', '(', '\013', '2', '\"',
'.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i',
'l', 'u', 'r', 'e', 'S', 't', 'a', 't', 'e', 'R', '\n', 'e', 'r', 'r', 'o', 'r', 'S', 't', 'a', 't', 'e', '\022', 'I', '\n', '\r',
'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a', 't', 'u', 's', '\030', '\006', ' ', '\001', '(', '\016', '2', '$', '.', 'e', 'n', 'v',
'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'R', 'e', 's', 'o', 'u', 'r', 'c',
'e', 'S', 't', 'a', 't', 'u', 's', 'R', '\014', 'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', ':', 'K', '\232', '\305',
'\210', '\036', 'F', '\n', 'D', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.',
'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y',
'n', 'a', 'm', 'i', 'c', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', 's', ':', '1',
'\232', '\305', '\210', '\036', ',', '\n', '*', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h',
'a', '.', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\"',
'\267', '\007', '\n', '\021', 'S', 'e', 'c', 'r', 'e', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '\022', 'U', '\n', '\016',
's', 't', 'a', 't', 'i', 'c', '_', 's', 'e', 'c', 'r', 'e', 't', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', '.', '.', 'e', 'n',
'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'S', 'e', 'c', 'r', 'e', 't', 's', 'C', 'o', 'n', 'f', 'i',
'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i', 'c', 'S', 'e', 'c', 'r', 'e', 't', 'R', '\r', 's', 't', 'a', 't', 'i',
'c', 'S', 'e', 'c', 'r', 'e', 't', 's', '\022', 'e', '\n', '\026', 'd', 'y', 'n', 'a', 'm', 'i', 'c', '_', 'a', 'c', 't', 'i', 'v',
'e', '_', 's', 'e', 'c', 'r', 'e', 't', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', '/', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a',
'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'S', 'e', 'c', 'r', 'e', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p',
'.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'S', 'e', 'c', 'r', 'e', 't', 'R', '\024', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'A', 'c',
't', 'i', 'v', 'e', 'S', 'e', 'c', 'r', 'e', 't', 's', '\022', 'g', '\n', '\027', 'd', 'y', 'n', 'a', 'm', 'i', 'c', '_', 'w', 'a',
'r', 'm', 'i', 'n', 'g', '_', 's', 'e', 'c', 'r', 'e', 't', 's', '\030', '\003', ' ', '\003', '(', '\013', '2', '/', '.', 'e', 'n', 'v',
'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'S', 'e', 'c', 'r', 'e', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g',
'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'S', 'e', 'c', 'r', 'e', 't', 'R', '\025', 'd', 'y', 'n', 'a', 'm',
'i', 'c', 'W', 'a', 'r', 'm', 'i', 'n', 'g', 'S', 'e', 'c', 'r', 'e', 't', 's', '\032', '\377', '\002', '\n', '\r', 'D', 'y', 'n', 'a',
'm', 'i', 'c', 'S', 'e', 'c', 'r', 'e', 't', '\022', '\022', '\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\004',
'n', 'a', 'm', 'e', '\022', '!', '\n', '\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f', 'o', '\030', '\002', ' ', '\001', '(',
'\t', 'R', '\013', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p',
'd', 'a', 't', 'e', 'd', '\030', '\003', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't',
'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't',
'e', 'd', '\022', ',', '\n', '\006', 's', 'e', 'c', 'r', 'e', 't', '\030', '\004', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g',
'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\006', 's', 'e', 'c', 'r', 'e', 't', '\022', 'C',
'\n', '\013', 'e', 'r', 'r', 'o', 'r', '_', 's', 't', 'a', 't', 'e', '\030', '\005', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v',
'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e',
'S', 't', 'a', 't', 'e', 'R', '\n', 'e', 'r', 'r', 'o', 'r', 'S', 't', 'a', 't', 'e', '\022', 'I', '\n', '\r', 'c', 'l', 'i', 'e',
'n', 't', '_', 's', 't', 'a', 't', 'u', 's', '\030', '\006', ' ', '\001', '(', '\016', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a',
'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'S', 't', 'a',
't', 'u', 's', 'R', '\014', 'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', ':', ':', '\232', '\305', '\210', '\036', '5', '\n',
'3', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'S', 'e', 'c', 'r',
'e', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'S', 'e', 'c', 'r',
'e', 't', '\032', '\312', '\001', '\n', '\014', 'S', 't', 'a', 't', 'i', 'c', 'S', 'e', 'c', 'r', 'e', 't', '\022', '\022', '\n', '\004', 'n', 'a',
'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\004', 'n', 'a', 'm', 'e', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p',
'd', 'a', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't',
'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't',
'e', 'd', '\022', ',', '\n', '\006', 's', 'e', 'c', 'r', 'e', 't', '\030', '\003', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g',
'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\006', 's', 'e', 'c', 'r', 'e', 't', ':', '9',
'\232', '\305', '\210', '\036', '4', '\n', '2', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h',
'a', '.', 'S', 'e', 'c', 'r', 'e', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't', 'a', 't', 'i',
'c', 'S', 'e', 'c', 'r', 'e', 't', ':', ',', '\232', '\305', '\210', '\036', '\'', '\n', '%', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm',
'i', 'n', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'S', 'e', 'c', 'r', 'e', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D',
'u', 'm', 'p', '\"', '\336', '\005', '\n', '\023', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u',
'm', 'p', '\022', 'p', '\n', '\027', 's', 't', 'a', 't', 'i', 'c', '_', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '_', 'c', 'o', 'n',
'f', 'i', 'g', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', '8', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.',
'v', '3', '.', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'S', 't',
'a', 't', 'i', 'c', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\025', 's', 't', 'a', 't', 'i',
'c', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\022', 's', '\n', '\030', 'd', 'y', 'n', 'a', 'm',
'i', 'c', '_', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '_', 'c', 'o', 'n', 'f', 'i', 'g', 's', '\030', '\003', ' ', '\003', '(', '\013',
'2', '9', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'E', 'n', 'd', 'p', 'o', 'i', 'n',
't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'E', 'n', 'd', 'p', 'o',
'i', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\026', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'E', 'n', 'd', 'p', 'o', 'i', 'n',
't', 'C', 'o', 'n', 'f', 'i', 'g', 's', '\032', '\224', '\001', '\n', '\024', 'S', 't', 'a', 't', 'i', 'c', 'E', 'n', 'd', 'p', 'o', 'i',
'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '=', '\n', '\017', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '_', 'c', 'o', 'n', 'f',
'i', 'g', '\030', '\001', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u',
'f', '.', 'A', 'n', 'y', 'R', '\016', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '=', '\n', '\014',
'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g',
'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a',
's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', '\032', '\310', '\002', '\n', '\025', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'E', 'n', 'd', 'p',
'o', 'i', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '!', '\n', '\014', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'i', 'n', 'f',
'o', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\013', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'I', 'n', 'f', 'o', '\022', '=', '\n', '\017', 'e',
'n', 'd', 'p', 'o', 'i', 'n', 't', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\002', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o',
'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\016', 'e', 'n', 'd', 'p', 'o', 'i',
'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '=', '\n', '\014', 'l', 'a', 's', 't', '_', 'u', 'p', 'd', 'a', 't', 'e', 'd', '\030',
'\003', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'T',
'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R', '\013', 'l', 'a', 's', 't', 'U', 'p', 'd', 'a', 't', 'e', 'd', '\022', 'C', '\n', '\013',
'e', 'r', 'r', 'o', 'r', '_', 's', 't', 'a', 't', 'e', '\030', '\004', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y',
'.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'U', 'p', 'd', 'a', 't', 'e', 'F', 'a', 'i', 'l', 'u', 'r', 'e', 'S', 't',
'a', 't', 'e', 'R', '\n', 'e', 'r', 'r', 'o', 'r', 'S', 't', 'a', 't', 'e', '\022', 'I', '\n', '\r', 'c', 'l', 'i', 'e', 'n', 't',
'_', 's', 't', 'a', 't', 'u', 's', '\030', '\005', ' ', '\001', '(', '\016', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm',
'i', 'n', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'S', 't', 'a', 't', 'u',
's', 'R', '\014', 'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', '*', ']', '\n', '\024', 'C', 'l', 'i', 'e', 'n', 't',
'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'S', 't', 'a', 't', 'u', 's', '\022', '\013', '\n', '\007', 'U', 'N', 'K', 'N', 'O', 'W', 'N',
'\020', '\000', '\022', '\r', '\n', '\t', 'R', 'E', 'Q', 'U', 'E', 'S', 'T', 'E', 'D', '\020', '\001', '\022', '\022', '\n', '\016', 'D', 'O', 'E', 'S',
'_', 'N', 'O', 'T', '_', 'E', 'X', 'I', 'S', 'T', '\020', '\002', '\022', '\t', '\n', '\005', 'A', 'C', 'K', 'E', 'D', '\020', '\003', '\022', '\n',
'\n', '\006', 'N', 'A', 'C', 'K', 'E', 'D', '\020', '\004', 'B', '9', '\n', '\034', 'i', 'o', '.', 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o',
'x', 'y', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', 'B', '\017', 'C', 'o', 'n', 'f', 'i', 'g',
'D', 'u', 'm', 'p', 'P', 'r', 'o', 't', 'o', 'P', '\001', '\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't',
'o', '3',
};
static upb_def_init *deps[6] = {
&envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit,
&google_protobuf_any_proto_upbdefinit,
&google_protobuf_timestamp_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
NULL
};
upb_def_init envoy_admin_v3_config_dump_proto_upbdefinit = {
deps,
layouts,
"envoy/admin/v3/config_dump.proto",
UPB_STRVIEW_INIT(descriptor, 6802)
};

@ -0,0 +1,140 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/admin/v3/config_dump.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_ADMIN_V3_CONFIG_DUMP_PROTO_UPBDEFS_H_
#define ENVOY_ADMIN_V3_CONFIG_DUMP_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_admin_v3_config_dump_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_admin_v3_ConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_UpdateFailureState_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.UpdateFailureState");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_BootstrapConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.BootstrapConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ListenersConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ListenersConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ListenersConfigDump_StaticListener_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ListenersConfigDump.StaticListener");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ListenersConfigDump_DynamicListenerState_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ListenersConfigDump.DynamicListenerState");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ListenersConfigDump_DynamicListener_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ListenersConfigDump.DynamicListener");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ClustersConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ClustersConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ClustersConfigDump_StaticCluster_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ClustersConfigDump.StaticCluster");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ClustersConfigDump_DynamicCluster_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ClustersConfigDump.DynamicCluster");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_RoutesConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.RoutesConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_RoutesConfigDump_StaticRouteConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.RoutesConfigDump.StaticRouteConfig");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.RoutesConfigDump.DynamicRouteConfig");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ScopedRoutesConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ScopedRoutesConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ScopedRoutesConfigDump_InlineScopedRouteConfigs_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ScopedRoutesConfigDump.InlineScopedRouteConfigs");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_ScopedRoutesConfigDump_DynamicScopedRouteConfigs_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.ScopedRoutesConfigDump.DynamicScopedRouteConfigs");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_SecretsConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.SecretsConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_SecretsConfigDump_DynamicSecret_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.SecretsConfigDump.DynamicSecret");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_SecretsConfigDump_StaticSecret_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.SecretsConfigDump.StaticSecret");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_EndpointsConfigDump_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.EndpointsConfigDump");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_EndpointsConfigDump_StaticEndpointConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.EndpointsConfigDump.StaticEndpointConfig");
}
UPB_INLINE const upb_msgdef *envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_admin_v3_config_dump_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.admin.v3.EndpointsConfigDump.DynamicEndpointConfig");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_ADMIN_V3_CONFIG_DUMP_PROTO_UPBDEFS_H_ */

@ -0,0 +1,383 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/bootstrap/v3/bootstrap.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/config/bootstrap/v3/bootstrap.upbdefs.h"
extern upb_def_init envoy_config_cluster_v3_cluster_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_address_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_base_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_config_source_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_event_service_config_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_extension_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_socket_option_proto_upbdefinit;
extern upb_def_init envoy_config_listener_v3_listener_proto_upbdefinit;
extern upb_def_init envoy_config_metrics_v3_stats_proto_upbdefinit;
extern upb_def_init envoy_config_overload_v3_overload_proto_upbdefinit;
extern upb_def_init envoy_config_trace_v3_http_tracer_proto_upbdefinit;
extern upb_def_init envoy_extensions_transport_sockets_tls_v3_secret_proto_upbdefinit;
extern upb_def_init envoy_type_v3_percent_proto_upbdefinit;
extern upb_def_init google_protobuf_duration_proto_upbdefinit;
extern upb_def_init google_protobuf_struct_proto_upbdefinit;
extern upb_def_init google_protobuf_wrappers_proto_upbdefinit;
extern upb_def_init udpa_annotations_migrate_proto_upbdefinit;
extern upb_def_init udpa_annotations_security_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern upb_def_init validate_validate_proto_upbdefinit;
extern const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_StaticResources_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_DynamicResources_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Admin_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_ClusterManager_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Watchdogs_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Watchdog_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Watchdog_WatchdogAction_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_FatalAction_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_Runtime_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_AdminLayer_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_msginit;
extern const upb_msglayout envoy_config_bootstrap_v3_LayeredRuntime_msginit;
static const upb_msglayout *layouts[17] = {
&envoy_config_bootstrap_v3_Bootstrap_msginit,
&envoy_config_bootstrap_v3_Bootstrap_StaticResources_msginit,
&envoy_config_bootstrap_v3_Bootstrap_DynamicResources_msginit,
&envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_msginit,
&envoy_config_bootstrap_v3_Admin_msginit,
&envoy_config_bootstrap_v3_ClusterManager_msginit,
&envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_msginit,
&envoy_config_bootstrap_v3_Watchdogs_msginit,
&envoy_config_bootstrap_v3_Watchdog_msginit,
&envoy_config_bootstrap_v3_Watchdog_WatchdogAction_msginit,
&envoy_config_bootstrap_v3_FatalAction_msginit,
&envoy_config_bootstrap_v3_Runtime_msginit,
&envoy_config_bootstrap_v3_RuntimeLayer_msginit,
&envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer_msginit,
&envoy_config_bootstrap_v3_RuntimeLayer_AdminLayer_msginit,
&envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_msginit,
&envoy_config_bootstrap_v3_LayeredRuntime_msginit,
};
static const char descriptor[6993] = {'\n', ')', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '/',
'v', '3', '/', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'p', 'r', 'o', 't', 'o', '\022', '\031', 'e', 'n', 'v', 'o', 'y',
'.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '\032', '%', 'e', 'n', 'v',
'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'l', 'u', 's', 't', 'e', 'r', '/', 'v', '3', '/', 'c', 'l', 'u', 's',
't', 'e', 'r', '.', 'p', 'r', 'o', 't', 'o', '\032', '\"', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c',
'o', 'r', 'e', '/', 'v', '3', '/', 'a', 'd', 'd', 'r', 'e', 's', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '\037', 'e', 'n', 'v',
'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'o', 'r', 'e', '/', 'v', '3', '/', 'b', 'a', 's', 'e', '.', 'p', 'r',
'o', 't', 'o', '\032', '(', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'o', 'r', 'e', '/', 'v', '3',
'/', 'c', 'o', 'n', 'f', 'i', 'g', '_', 's', 'o', 'u', 'r', 'c', 'e', '.', 'p', 'r', 'o', 't', 'o', '\032', '/', 'e', 'n', 'v',
'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'o', 'r', 'e', '/', 'v', '3', '/', 'e', 'v', 'e', 'n', 't', '_', 's',
'e', 'r', 'v', 'i', 'c', 'e', '_', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '$', 'e', 'n', 'v', 'o',
'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'o', 'r', 'e', '/', 'v', '3', '/', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o',
'n', '.', 'p', 'r', 'o', 't', 'o', '\032', '(', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'o', 'r',
'e', '/', 'v', '3', '/', 's', 'o', 'c', 'k', 'e', 't', '_', 'o', 'p', 't', 'i', 'o', 'n', '.', 'p', 'r', 'o', 't', 'o', '\032',
'\'', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '/', 'v', '3',
'/', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '.', 'p', 'r', 'o', 't', 'o', '\032', '#', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o',
'n', 'f', 'i', 'g', '/', 'm', 'e', 't', 'r', 'i', 'c', 's', '/', 'v', '3', '/', 's', 't', 'a', 't', 's', '.', 'p', 'r', 'o',
't', 'o', '\032', '\'', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd',
'/', 'v', '3', '/', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'p', 'r', 'o', 't', 'o', '\032', '\'', 'e', 'n', 'v', 'o', 'y',
'/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 't', 'r', 'a', 'c', 'e', '/', 'v', '3', '/', 'h', 't', 't', 'p', '_', 't', 'r', 'a',
'c', 'e', 'r', '.', 'p', 'r', 'o', 't', 'o', '\032', '6', 'e', 'n', 'v', 'o', 'y', '/', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o',
'n', 's', '/', 't', 'r', 'a', 'n', 's', 'p', 'o', 'r', 't', '_', 's', 'o', 'c', 'k', 'e', 't', 's', '/', 't', 'l', 's', '/',
'v', '3', '/', 's', 'e', 'c', 'r', 'e', 't', '.', 'p', 'r', 'o', 't', 'o', '\032', '\033', 'e', 'n', 'v', 'o', 'y', '/', 't', 'y',
'p', 'e', '/', 'v', '3', '/', 'p', 'e', 'r', 'c', 'e', 'n', 't', '.', 'p', 'r', 'o', 't', 'o', '\032', '\036', 'g', 'o', 'o', 'g',
'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 'd', 'u', 'r', 'a', 't', 'i', 'o', 'n', '.', 'p', 'r', 'o', 't',
'o', '\032', '\034', 'g', 'o', 'o', 'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 's', 't', 'r', 'u', 'c', 't',
'.', 'p', 'r', 'o', 't', 'o', '\032', '\036', 'g', 'o', 'o', 'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 'w',
'r', 'a', 'p', 'p', 'e', 'r', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '\036', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't',
'a', 't', 'i', 'o', 'n', 's', '/', 'm', 'i', 'g', 'r', 'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\032', '\037', 'u', 'd', 'p',
'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 'e', 'c', 'u', 'r', 'i', 't', 'y', '.', 'p', 'r',
'o', 't', 'o', '\032', '\035', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a',
't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o',
'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\027', 'v', 'a', 'l', 'i',
'd', 'a', 't', 'e', '/', 'v', 'a', 'l', 'i', 'd', 'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\"', '\341', '\026', '\n', '\t', 'B',
'o', 'o', 't', 's', 't', 'r', 'a', 'p', '\022', '.', '\n', '\004', 'n', 'o', 'd', 'e', '\030', '\001', ' ', '\001', '(', '\013', '2', '\032', '.',
'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'N', 'o', 'd', 'e',
'R', '\004', 'n', 'o', 'd', 'e', '\022', '.', '\n', '\023', 'n', 'o', 'd', 'e', '_', 'c', 'o', 'n', 't', 'e', 'x', 't', '_', 'p', 'a',
'r', 'a', 'm', 's', '\030', '\032', ' ', '\003', '(', '\t', 'R', '\021', 'n', 'o', 'd', 'e', 'C', 'o', 'n', 't', 'e', 'x', 't', 'P', 'a',
'r', 'a', 'm', 's', '\022', '_', '\n', '\020', 's', 't', 'a', 't', 'i', 'c', '_', 'r', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', '\030',
'\002', ' ', '\001', '(', '\013', '2', '4', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't',
's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'S', 't', 'a', 't', 'i', 'c',
'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', 'R', '\017', 's', 't', 'a', 't', 'i', 'c', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e',
's', '\022', 'b', '\n', '\021', 'd', 'y', 'n', 'a', 'm', 'i', 'c', '_', 'r', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', '\030', '\003', ' ',
'\001', '(', '\013', '2', '5', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't',
'r', 'a', 'p', '.', 'v', '3', '.', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'R',
'e', 's', 'o', 'u', 'r', 'c', 'e', 's', 'R', '\020', 'd', 'y', 'n', 'a', 'm', 'i', 'c', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e',
's', '\022', 'R', '\n', '\017', 'c', 'l', 'u', 's', 't', 'e', 'r', '_', 'm', 'a', 'n', 'a', 'g', 'e', 'r', '\030', '\004', ' ', '\001', '(',
'\013', '2', ')', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a',
'p', '.', 'v', '3', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 'M', 'a', 'n', 'a', 'g', 'e', 'r', 'R', '\016', 'c', 'l', 'u', 's',
't', 'e', 'r', 'M', 'a', 'n', 'a', 'g', 'e', 'r', '\022', 'D', '\n', '\n', 'h', 'd', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030',
'\016', ' ', '\001', '(', '\013', '2', '%', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e',
'.', 'v', '3', '.', 'A', 'p', 'i', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', 'R', '\t', 'h', 'd', 's', 'C',
'o', 'n', 'f', 'i', 'g', '\022', '\035', '\n', '\n', 'f', 'l', 'a', 'g', 's', '_', 'p', 'a', 't', 'h', '\030', '\005', ' ', '\001', '(', '\t',
'R', '\t', 'f', 'l', 'a', 'g', 's', 'P', 'a', 't', 'h', '\022', 'C', '\n', '\013', 's', 't', 'a', 't', 's', '_', 's', 'i', 'n', 'k',
's', '\030', '\006', ' ', '\003', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e',
't', 'r', 'i', 'c', 's', '.', 'v', '3', '.', 'S', 't', 'a', 't', 's', 'S', 'i', 'n', 'k', 'R', '\n', 's', 't', 'a', 't', 's',
'S', 'i', 'n', 'k', 's', '\022', 'G', '\n', '\014', 's', 't', 'a', 't', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\r', ' ', '\001',
'(', '\013', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c', 's',
'.', 'v', '3', '.', 'S', 't', 'a', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\013', 's', 't', 'a', 't', 's', 'C', 'o', 'n',
'f', 'i', 'g', '\022', 'q', '\n', '\024', 's', 't', 'a', 't', 's', '_', 'f', 'l', 'u', 's', 'h', '_', 'i', 'n', 't', 'e', 'r', 'v',
'a', 'l', '\030', '\007', ' ', '\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u',
'f', '.', 'D', 'u', 'r', 'a', 't', 'i', 'o', 'n', 'B', '$', '\372', 'B', '\016', '\252', '\001', '\013', '\032', '\003', '\010', '\254', '\002', '2', '\004',
'\020', '\300', '\204', '=', '\362', '\230', '\376', '\217', '\005', '\r', '\022', '\013', 's', 't', 'a', 't', 's', '_', 'f', 'l', 'u', 's', 'h', 'R', '\022',
's', 't', 'a', 't', 's', 'F', 'l', 'u', 's', 'h', 'I', 'n', 't', 'e', 'r', 'v', 'a', 'l', '\022', ':', '\n', '\024', 's', 't', 'a',
't', 's', '_', 'f', 'l', 'u', 's', 'h', '_', 'o', 'n', '_', 'a', 'd', 'm', 'i', 'n', '\030', '\035', ' ', '\001', '(', '\010', 'B', '\007',
'\372', 'B', '\004', 'j', '\002', '\010', '\001', 'H', '\000', 'R', '\021', 's', 't', 'a', 't', 's', 'F', 'l', 'u', 's', 'h', 'O', 'n', 'A', 'd',
'm', 'i', 'n', '\022', 'C', '\n', '\010', 'w', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\030', '\010', ' ', '\001', '(', '\013', '2', '#', '.', 'e',
'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.',
'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 'B', '\002', '\030', '\001', 'R', '\010', 'w', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\022', 'B', '\n',
'\t', 'w', 'a', 't', 'c', 'h', 'd', 'o', 'g', 's', '\030', '\033', ' ', '\001', '(', '\013', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.',
'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'W', 'a', 't', 'c', 'h',
'd', 'o', 'g', 's', 'R', '\t', 'w', 'a', 't', 'c', 'h', 'd', 'o', 'g', 's', '\022', '<', '\n', '\007', 't', 'r', 'a', 'c', 'i', 'n',
'g', '\030', '\t', ' ', '\001', '(', '\013', '2', '\036', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 't', 'r',
'a', 'c', 'e', '.', 'v', '3', '.', 'T', 'r', 'a', 'c', 'i', 'n', 'g', 'B', '\002', '\030', '\001', 'R', '\007', 't', 'r', 'a', 'c', 'i',
'n', 'g', '\022', 'R', '\n', '\017', 'l', 'a', 'y', 'e', 'r', 'e', 'd', '_', 'r', 'u', 'n', 't', 'i', 'm', 'e', '\030', '\021', ' ', '\001',
'(', '\013', '2', ')', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r',
'a', 'p', '.', 'v', '3', '.', 'L', 'a', 'y', 'e', 'r', 'e', 'd', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'R', '\016', 'l', 'a', 'y',
'e', 'r', 'e', 'd', 'R', 'u', 'n', 't', 'i', 'm', 'e', '\022', '6', '\n', '\005', 'a', 'd', 'm', 'i', 'n', '\030', '\014', ' ', '\001', '(',
'\013', '2', ' ', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a',
'p', '.', 'v', '3', '.', 'A', 'd', 'm', 'i', 'n', 'R', '\005', 'a', 'd', 'm', 'i', 'n', '\022', 'd', '\n', '\020', 'o', 'v', 'e', 'r',
'l', 'o', 'a', 'd', '_', 'm', 'a', 'n', 'a', 'g', 'e', 'r', '\030', '\017', ' ', '\001', '(', '\013', '2', ')', '.', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'O', 'v', 'e', 'r',
'l', 'o', 'a', 'd', 'M', 'a', 'n', 'a', 'g', 'e', 'r', 'B', '\016', '\212', '\223', '\267', '*', '\002', '\010', '\001', '\212', '\223', '\267', '*', '\002',
'\020', '\001', 'R', '\017', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'M', 'a', 'n', 'a', 'g', 'e', 'r', '\022', '6', '\n', '\027', 'e', 'n',
'a', 'b', 'l', 'e', '_', 'd', 'i', 's', 'p', 'a', 't', 'c', 'h', 'e', 'r', '_', 's', 't', 'a', 't', 's', '\030', '\020', ' ', '\001',
'(', '\010', 'R', '\025', 'e', 'n', 'a', 'b', 'l', 'e', 'D', 'i', 's', 'p', 'a', 't', 'c', 'h', 'e', 'r', 'S', 't', 'a', 't', 's',
'\022', '#', '\n', '\r', 'h', 'e', 'a', 'd', 'e', 'r', '_', 'p', 'r', 'e', 'f', 'i', 'x', '\030', '\022', ' ', '\001', '(', '\t', 'R', '\014',
'h', 'e', 'a', 'd', 'e', 'r', 'P', 'r', 'e', 'f', 'i', 'x', '\022', '_', '\n', '\035', 's', 't', 'a', 't', 's', '_', 's', 'e', 'r',
'v', 'e', 'r', '_', 'v', 'e', 'r', 's', 'i', 'o', 'n', '_', 'o', 'v', 'e', 'r', 'r', 'i', 'd', 'e', '\030', '\023', ' ', '\001', '(',
'\013', '2', '\034', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'U', 'I', 'n', 't', '6',
'4', 'V', 'a', 'l', 'u', 'e', 'R', '\032', 's', 't', 'a', 't', 's', 'S', 'e', 'r', 'v', 'e', 'r', 'V', 'e', 'r', 's', 'i', 'o',
'n', 'O', 'v', 'e', 'r', 'r', 'i', 'd', 'e', '\022', '4', '\n', '\027', 'u', 's', 'e', '_', 't', 'c', 'p', '_', 'f', 'o', 'r', '_',
'd', 'n', 's', '_', 'l', 'o', 'o', 'k', 'u', 'p', 's', '\030', '\024', ' ', '\001', '(', '\010', 'R', '\023', 'u', 's', 'e', 'T', 'c', 'p',
'F', 'o', 'r', 'D', 'n', 's', 'L', 'o', 'o', 'k', 'u', 'p', 's', '\022', ']', '\n', '\024', 'b', 'o', 'o', 't', 's', 't', 'r', 'a',
'p', '_', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '\030', '\025', ' ', '\003', '(', '\013', '2', '*', '.', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'T', 'y', 'p', 'e', 'd', 'E', 'x', 't',
'e', 'n', 's', 'i', 'o', 'n', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\023', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', 'E', 'x',
't', 'e', 'n', 's', 'i', 'o', 'n', 's', '\022', 'K', '\n', '\r', 'f', 'a', 't', 'a', 'l', '_', 'a', 'c', 't', 'i', 'o', 'n', 's',
'\030', '\034', ' ', '\003', '(', '\013', '2', '&', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o',
't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'F', 'a', 't', 'a', 'l', 'A', 'c', 't', 'i', 'o', 'n', 'R', '\014', 'f', 'a',
't', 'a', 'l', 'A', 'c', 't', 'i', 'o', 'n', 's', '\022', 'I', '\n', '\016', 'c', 'o', 'n', 'f', 'i', 'g', '_', 's', 'o', 'u', 'r',
'c', 'e', 's', '\030', '\026', ' ', '\003', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.',
'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', 'R', '\r', 'c', 'o', 'n',
'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', 's', '\022', 'V', '\n', '\025', 'd', 'e', 'f', 'a', 'u', 'l', 't', '_', 'c', 'o', 'n',
'f', 'i', 'g', '_', 's', 'o', 'u', 'r', 'c', 'e', '\030', '\027', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.',
'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r',
'c', 'e', 'R', '\023', 'd', 'e', 'f', 'a', 'u', 'l', 't', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', '\022', '8',
'\n', '\030', 'd', 'e', 'f', 'a', 'u', 'l', 't', '_', 's', 'o', 'c', 'k', 'e', 't', '_', 'i', 'n', 't', 'e', 'r', 'f', 'a', 'c',
'e', '\030', '\030', ' ', '\001', '(', '\t', 'R', '\026', 'd', 'e', 'f', 'a', 'u', 'l', 't', 'S', 'o', 'c', 'k', 'e', 't', 'I', 'n', 't',
'e', 'r', 'f', 'a', 'c', 'e', '\022', '\214', '\001', '\n', '\036', 'c', 'e', 'r', 't', 'i', 'f', 'i', 'c', 'a', 't', 'e', '_', 'p', 'r',
'o', 'v', 'i', 'd', 'e', 'r', '_', 'i', 'n', 's', 't', 'a', 'n', 'c', 'e', 's', '\030', '\031', ' ', '\003', '(', '\013', '2', 'F', '.',
'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3',
'.', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'C', 'e', 'r', 't', 'i', 'f', 'i', 'c', 'a', 't', 'e', 'P', 'r', 'o',
'v', 'i', 'd', 'e', 'r', 'I', 'n', 's', 't', 'a', 'n', 'c', 'e', 's', 'E', 'n', 't', 'r', 'y', 'R', '\034', 'c', 'e', 'r', 't',
'i', 'f', 'i', 'c', 'a', 't', 'e', 'P', 'r', 'o', 'v', 'i', 'd', 'e', 'r', 'I', 'n', 's', 't', 'a', 'n', 'c', 'e', 's', '\032',
'\232', '\002', '\n', '\017', 'S', 't', 'a', 't', 'i', 'c', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', '\022', '@', '\n', '\t', 'l', 'i',
's', 't', 'e', 'n', 'e', 'r', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n',
'f', 'i', 'g', '.', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '.', 'v', '3', '.', 'L', 'i', 's', 't', 'e', 'n', 'e', 'r', 'R',
'\t', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', 's', '\022', '<', '\n', '\010', 'c', 'l', 'u', 's', 't', 'e', 'r', 's', '\030', '\002', ' ',
'\003', '(', '\013', '2', ' ', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'l', 'u', 's', 't', 'e',
'r', '.', 'v', '3', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 'R', '\010', 'c', 'l', 'u', 's', 't', 'e', 'r', 's', '\022', 'K', '\n',
'\007', 's', 'e', 'c', 'r', 'e', 't', 's', '\030', '\003', ' ', '\003', '(', '\013', '2', '1', '.', 'e', 'n', 'v', 'o', 'y', '.', 'e', 'x',
't', 'e', 'n', 's', 'i', 'o', 'n', 's', '.', 't', 'r', 'a', 'n', 's', 'p', 'o', 'r', 't', '_', 's', 'o', 'c', 'k', 'e', 't',
's', '.', 't', 'l', 's', '.', 'v', '3', '.', 'S', 'e', 'c', 'r', 'e', 't', 'R', '\007', 's', 'e', 'c', 'r', 'e', 't', 's', ':',
':', '\232', '\305', '\210', '\036', '5', '\n', '3', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't',
's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'S', 't', 'a', 't', 'i', 'c',
'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', '\032', '\211', '\003', '\n', '\020', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'R', 'e', 's', 'o',
'u', 'r', 'c', 'e', 's', '\022', 'A', '\n', '\n', 'l', 'd', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\001', ' ', '\001', '(', '\013',
'2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'C',
'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', 'R', '\t', 'l', 'd', 's', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '2', '\n',
'\025', 'l', 'd', 's', '_', 'r', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', '_', 'l', 'o', 'c', 'a', 't', 'o', 'r', '\030', '\005', ' ',
'\001', '(', '\t', 'R', '\023', 'l', 'd', 's', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', 'L', 'o', 'c', 'a', 't', 'o', 'r', '\022',
'A', '\n', '\n', 'c', 'd', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\002', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v',
'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'C', 'o', 'n', 'f', 'i', 'g', 'S',
'o', 'u', 'r', 'c', 'e', 'R', '\t', 'c', 'd', 's', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '2', '\n', '\025', 'c', 'd', 's', '_', 'r',
'e', 's', 'o', 'u', 'r', 'c', 'e', 's', '_', 'l', 'o', 'c', 'a', 't', 'o', 'r', '\030', '\006', ' ', '\001', '(', '\t', 'R', '\023', 'c',
'd', 's', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', 'L', 'o', 'c', 'a', 't', 'o', 'r', '\022', 'D', '\n', '\n', 'a', 'd', 's',
'_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\003', ' ', '\001', '(', '\013', '2', '%', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n',
'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'A', 'p', 'i', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r',
'c', 'e', 'R', '\t', 'a', 'd', 's', 'C', 'o', 'n', 'f', 'i', 'g', ':', ';', '\232', '\305', '\210', '\036', '6', '\n', '4', 'e', 'n', 'v',
'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'B', 'o',
'o', 't', 's', 't', 'r', 'a', 'p', '.', 'D', 'y', 'n', 'a', 'm', 'i', 'c', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 's', 'J',
'\004', '\010', '\004', '\020', '\005', '\032', '{', '\n', '!', 'C', 'e', 'r', 't', 'i', 'f', 'i', 'c', 'a', 't', 'e', 'P', 'r', 'o', 'v', 'i',
'd', 'e', 'r', 'I', 'n', 's', 't', 'a', 'n', 'c', 'e', 's', 'E', 'n', 't', 'r', 'y', '\022', '\020', '\n', '\003', 'k', 'e', 'y', '\030',
'\001', ' ', '\001', '(', '\t', 'R', '\003', 'k', 'e', 'y', '\022', '@', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\002', ' ', '\001', '(', '\013',
'2', '*', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'T',
'y', 'p', 'e', 'd', 'E', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\005', 'v', 'a', 'l', 'u',
'e', ':', '\002', '8', '\001', ':', '*', '\232', '\305', '\210', '\036', '%', '\n', '#', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i',
'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', 'B',
'\r', '\n', '\013', 's', 't', 'a', 't', 's', '_', 'f', 'l', 'u', 's', 'h', 'J', '\004', '\010', '\n', '\020', '\013', 'J', '\004', '\010', '\013', '\020',
'\014', 'R', '\007', 'r', 'u', 'n', 't', 'i', 'm', 'e', '\"', '\376', '\001', '\n', '\005', 'A', 'd', 'm', 'i', 'n', '\022', '&', '\n', '\017', 'a',
'c', 'c', 'e', 's', 's', '_', 'l', 'o', 'g', '_', 'p', 'a', 't', 'h', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\r', 'a', 'c', 'c',
'e', 's', 's', 'L', 'o', 'g', 'P', 'a', 't', 'h', '\022', '!', '\n', '\014', 'p', 'r', 'o', 'f', 'i', 'l', 'e', '_', 'p', 'a', 't',
'h', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\013', 'p', 'r', 'o', 'f', 'i', 'l', 'e', 'P', 'a', 't', 'h', '\022', '7', '\n', '\007', 'a',
'd', 'd', 'r', 'e', 's', 's', '\030', '\003', ' ', '\001', '(', '\013', '2', '\035', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f',
'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'A', 'd', 'd', 'r', 'e', 's', 's', 'R', '\007', 'a', 'd', 'd', 'r', 'e',
's', 's', '\022', 'I', '\n', '\016', 's', 'o', 'c', 'k', 'e', 't', '_', 'o', 'p', 't', 'i', 'o', 'n', 's', '\030', '\004', ' ', '\003', '(',
'\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.',
'S', 'o', 'c', 'k', 'e', 't', 'O', 'p', 't', 'i', 'o', 'n', 'R', '\r', 's', 'o', 'c', 'k', 'e', 't', 'O', 'p', 't', 'i', 'o',
'n', 's', ':', '&', '\232', '\305', '\210', '\036', '!', '\n', '\037', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b',
'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'A', 'd', 'm', 'i', 'n', '\"', '\313', '\004', '\n', '\016', 'C', 'l', 'u',
's', 't', 'e', 'r', 'M', 'a', 'n', 'a', 'g', 'e', 'r', '\022', ',', '\n', '\022', 'l', 'o', 'c', 'a', 'l', '_', 'c', 'l', 'u', 's',
't', 'e', 'r', '_', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\020', 'l', 'o', 'c', 'a', 'l', 'C', 'l', 'u', 's',
't', 'e', 'r', 'N', 'a', 'm', 'e', '\022', 'g', '\n', '\021', 'o', 'u', 't', 'l', 'i', 'e', 'r', '_', 'd', 'e', 't', 'e', 'c', 't',
'i', 'o', 'n', '\030', '\002', ' ', '\001', '(', '\013', '2', ':', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.',
'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 'M', 'a', 'n', 'a', 'g',
'e', 'r', '.', 'O', 'u', 't', 'l', 'i', 'e', 'r', 'D', 'e', 't', 'e', 'c', 't', 'i', 'o', 'n', 'R', '\020', 'o', 'u', 't', 'l',
'i', 'e', 'r', 'D', 'e', 't', 'e', 'c', 't', 'i', 'o', 'n', '\022', 'R', '\n', '\024', 'u', 'p', 's', 't', 'r', 'e', 'a', 'm', '_',
'b', 'i', 'n', 'd', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\003', ' ', '\001', '(', '\013', '2', ' ', '.', 'e', 'n', 'v', 'o', 'y',
'.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'B', 'i', 'n', 'd', 'C', 'o', 'n', 'f', 'i',
'g', 'R', '\022', 'u', 'p', 's', 't', 'r', 'e', 'a', 'm', 'B', 'i', 'n', 'd', 'C', 'o', 'n', 'f', 'i', 'g', '\022', 'Q', '\n', '\021',
'l', 'o', 'a', 'd', '_', 's', 't', 'a', 't', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\004', ' ', '\001', '(', '\013', '2', '%',
'.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'A', 'p', 'i',
'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', 'R', '\017', 'l', 'o', 'a', 'd', 'S', 't', 'a', 't', 's', 'C', 'o',
'n', 'f', 'i', 'g', '\032', '\311', '\001', '\n', '\020', 'O', 'u', 't', 'l', 'i', 'e', 'r', 'D', 'e', 't', 'e', 'c', 't', 'i', 'o', 'n',
'\022', '$', '\n', '\016', 'e', 'v', 'e', 'n', 't', '_', 'l', 'o', 'g', '_', 'p', 'a', 't', 'h', '\030', '\001', ' ', '\001', '(', '\t', 'R',
'\014', 'e', 'v', 'e', 'n', 't', 'L', 'o', 'g', 'P', 'a', 't', 'h', '\022', 'M', '\n', '\r', 'e', 'v', 'e', 'n', 't', '_', 's', 'e',
'r', 'v', 'i', 'c', 'e', '\030', '\002', ' ', '\001', '(', '\013', '2', '(', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i',
'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'E', 'v', 'e', 'n', 't', 'S', 'e', 'r', 'v', 'i', 'c', 'e', 'C', 'o', 'n',
'f', 'i', 'g', 'R', '\014', 'e', 'v', 'e', 'n', 't', 'S', 'e', 'r', 'v', 'i', 'c', 'e', ':', '@', '\232', '\305', '\210', '\036', ';', '\n',
'9', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v',
'2', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 'M', 'a', 'n', 'a', 'g', 'e', 'r', '.', 'O', 'u', 't', 'l', 'i', 'e', 'r', 'D',
'e', 't', 'e', 'c', 't', 'i', 'o', 'n', ':', '/', '\232', '\305', '\210', '\036', '*', '\n', '(', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o',
'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'C', 'l', 'u', 's', 't', 'e', 'r',
'M', 'a', 'n', 'a', 'g', 'e', 'r', '\"', '\260', '\001', '\n', '\t', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 's', '\022', 'U', '\n', '\024',
'm', 'a', 'i', 'n', '_', 't', 'h', 'r', 'e', 'a', 'd', '_', 'w', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\030', '\001', ' ', '\001', '(',
'\013', '2', '#', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a',
'p', '.', 'v', '3', '.', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 'R', '\022', 'm', 'a', 'i', 'n', 'T', 'h', 'r', 'e', 'a', 'd',
'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\022', 'L', '\n', '\017', 'w', 'o', 'r', 'k', 'e', 'r', '_', 'w', 'a', 't', 'c', 'h', 'd',
'o', 'g', '\030', '\002', ' ', '\001', '(', '\013', '2', '#', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b',
'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 'R', '\016', 'w', 'o', 'r',
'k', 'e', 'r', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\"', '\272', '\006', '\n', '\010', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\022',
'L', '\n', '\007', 'a', 'c', 't', 'i', 'o', 'n', 's', '\030', '\007', ' ', '\003', '(', '\013', '2', '2', '.', 'e', 'n', 'v', 'o', 'y', '.',
'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'W', 'a', 't', 'c', 'h',
'd', 'o', 'g', '.', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 'A', 'c', 't', 'i', 'o', 'n', 'R', '\007', 'a', 'c', 't', 'i', 'o',
'n', 's', '\022', '<', '\n', '\014', 'm', 'i', 's', 's', '_', 't', 'i', 'm', 'e', 'o', 'u', 't', '\030', '\001', ' ', '\001', '(', '\013', '2',
'\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'D', 'u', 'r', 'a', 't', 'i', 'o',
'n', 'R', '\013', 'm', 'i', 's', 's', 'T', 'i', 'm', 'e', 'o', 'u', 't', '\022', 'D', '\n', '\020', 'm', 'e', 'g', 'a', 'm', 'i', 's',
's', '_', 't', 'i', 'm', 'e', 'o', 'u', 't', '\030', '\002', ' ', '\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.',
'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'D', 'u', 'r', 'a', 't', 'i', 'o', 'n', 'R', '\017', 'm', 'e', 'g', 'a', 'm', 'i',
's', 's', 'T', 'i', 'm', 'e', 'o', 'u', 't', '\022', '<', '\n', '\014', 'k', 'i', 'l', 'l', '_', 't', 'i', 'm', 'e', 'o', 'u', 't',
'\030', '\003', ' ', '\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.',
'D', 'u', 'r', 'a', 't', 'i', 'o', 'n', 'R', '\013', 'k', 'i', 'l', 'l', 'T', 'i', 'm', 'e', 'o', 'u', 't', '\022', 'Z', '\n', '\027',
'm', 'a', 'x', '_', 'k', 'i', 'l', 'l', '_', 't', 'i', 'm', 'e', 'o', 'u', 't', '_', 'j', 'i', 't', 't', 'e', 'r', '\030', '\006',
' ', '\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'D', 'u',
'r', 'a', 't', 'i', 'o', 'n', 'B', '\010', '\372', 'B', '\005', '\252', '\001', '\002', '2', '\000', 'R', '\024', 'm', 'a', 'x', 'K', 'i', 'l', 'l',
'T', 'i', 'm', 'e', 'o', 'u', 't', 'J', 'i', 't', 't', 'e', 'r', '\022', 'F', '\n', '\021', 'm', 'u', 'l', 't', 'i', 'k', 'i', 'l',
'l', '_', 't', 'i', 'm', 'e', 'o', 'u', 't', '\030', '\004', ' ', '\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.',
'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'D', 'u', 'r', 'a', 't', 'i', 'o', 'n', 'R', '\020', 'm', 'u', 'l', 't', 'i', 'k',
'i', 'l', 'l', 'T', 'i', 'm', 'e', 'o', 'u', 't', '\022', 'G', '\n', '\023', 'm', 'u', 'l', 't', 'i', 'k', 'i', 'l', 'l', '_', 't',
'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\030', '\005', ' ', '\001', '(', '\013', '2', '\026', '.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y',
'p', 'e', '.', 'v', '3', '.', 'P', 'e', 'r', 'c', 'e', 'n', 't', 'R', '\022', 'm', 'u', 'l', 't', 'i', 'k', 'i', 'l', 'l', 'T',
'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\032', '\205', '\002', '\n', '\016', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 'A', 'c', 't', 'i',
'o', 'n', '\022', 'B', '\n', '\006', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\001', ' ', '\001', '(', '\013', '2', '*', '.', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'T', 'y', 'p', 'e', 'd', 'E', 'x', 't',
'e', 'n', 's', 'i', 'o', 'n', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\006', 'c', 'o', 'n', 'f', 'i', 'g', '\022', '`', '\n', '\005', 'e',
'v', 'e', 'n', 't', '\030', '\002', ' ', '\001', '(', '\016', '2', '@', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g',
'.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', '.', 'W', 'a',
't', 'c', 'h', 'd', 'o', 'g', 'A', 'c', 't', 'i', 'o', 'n', '.', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', 'E', 'v', 'e', 'n',
't', 'B', '\010', '\372', 'B', '\005', '\202', '\001', '\002', '\020', '\001', 'R', '\005', 'e', 'v', 'e', 'n', 't', '\"', 'M', '\n', '\r', 'W', 'a', 't',
'c', 'h', 'd', 'o', 'g', 'E', 'v', 'e', 'n', 't', '\022', '\013', '\n', '\007', 'U', 'N', 'K', 'N', 'O', 'W', 'N', '\020', '\000', '\022', '\010',
'\n', '\004', 'K', 'I', 'L', 'L', '\020', '\001', '\022', '\r', '\n', '\t', 'M', 'U', 'L', 'T', 'I', 'K', 'I', 'L', 'L', '\020', '\002', '\022', '\014',
'\n', '\010', 'M', 'E', 'G', 'A', 'M', 'I', 'S', 'S', '\020', '\003', '\022', '\010', '\n', '\004', 'M', 'I', 'S', 'S', '\020', '\004', ':', ')', '\232',
'\305', '\210', '\036', '$', '\n', '\"', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't',
'r', 'a', 'p', '.', 'v', '2', '.', 'W', 'a', 't', 'c', 'h', 'd', 'o', 'g', '\"', 'Q', '\n', '\013', 'F', 'a', 't', 'a', 'l', 'A',
'c', 't', 'i', 'o', 'n', '\022', 'B', '\n', '\006', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\001', ' ', '\001', '(', '\013', '2', '*', '.', 'e',
'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'T', 'y', 'p', 'e', 'd',
'E', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\006', 'c', 'o', 'n', 'f', 'i', 'g', '\"', '\334',
'\001', '\n', '\007', 'R', 'u', 'n', 't', 'i', 'm', 'e', '\022', '!', '\n', '\014', 's', 'y', 'm', 'l', 'i', 'n', 'k', '_', 'r', 'o', 'o',
't', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\013', 's', 'y', 'm', 'l', 'i', 'n', 'k', 'R', 'o', 'o', 't', '\022', '\"', '\n', '\014', 's',
'u', 'b', 'd', 'i', 'r', 'e', 'c', 't', 'o', 'r', 'y', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\014', 's', 'u', 'b', 'd', 'i', 'r',
'e', 'c', 't', 'o', 'r', 'y', '\022', '3', '\n', '\025', 'o', 'v', 'e', 'r', 'r', 'i', 'd', 'e', '_', 's', 'u', 'b', 'd', 'i', 'r',
'e', 'c', 't', 'o', 'r', 'y', '\030', '\003', ' ', '\001', '(', '\t', 'R', '\024', 'o', 'v', 'e', 'r', 'r', 'i', 'd', 'e', 'S', 'u', 'b',
'd', 'i', 'r', 'e', 'c', 't', 'o', 'r', 'y', '\022', '+', '\n', '\004', 'b', 'a', 's', 'e', '\030', '\004', ' ', '\001', '(', '\013', '2', '\027',
'.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'S', 't', 'r', 'u', 'c', 't', 'R', '\004',
'b', 'a', 's', 'e', ':', '(', '\232', '\305', '\210', '\036', '#', '\n', '!', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g',
'.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'R', 'u', 'n', 't', 'i', 'm', 'e', '\"', '\333', '\006', '\n',
'\014', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', '\022', '\033', '\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001',
'(', '\t', 'B', '\007', '\372', 'B', '\004', 'r', '\002', '\020', '\001', 'R', '\004', 'n', 'a', 'm', 'e', '\022', '<', '\n', '\014', 's', 't', 'a', 't',
'i', 'c', '_', 'l', 'a', 'y', 'e', 'r', '\030', '\002', ' ', '\001', '(', '\013', '2', '\027', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p',
'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'S', 't', 'r', 'u', 'c', 't', 'H', '\000', 'R', '\013', 's', 't', 'a', 't', 'i', 'c', 'L',
'a', 'y', 'e', 'r', '\022', 'R', '\n', '\n', 'd', 'i', 's', 'k', '_', 'l', 'a', 'y', 'e', 'r', '\030', '\003', ' ', '\001', '(', '\013', '2',
'1', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.',
'v', '3', '.', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', '.', 'D', 'i', 's', 'k', 'L', 'a', 'y', 'e', 'r',
'H', '\000', 'R', '\t', 'd', 'i', 's', 'k', 'L', 'a', 'y', 'e', 'r', '\022', 'U', '\n', '\013', 'a', 'd', 'm', 'i', 'n', '_', 'l', 'a',
'y', 'e', 'r', '\030', '\004', ' ', '\001', '(', '\013', '2', '2', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.',
'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r',
'.', 'A', 'd', 'm', 'i', 'n', 'L', 'a', 'y', 'e', 'r', 'H', '\000', 'R', '\n', 'a', 'd', 'm', 'i', 'n', 'L', 'a', 'y', 'e', 'r',
'\022', 'R', '\n', '\n', 'r', 't', 'd', 's', '_', 'l', 'a', 'y', 'e', 'r', '\030', '\005', ' ', '\001', '(', '\013', '2', '1', '.', 'e', 'n',
'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'R',
'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', '.', 'R', 't', 'd', 's', 'L', 'a', 'y', 'e', 'r', 'H', '\000', 'R', '\t',
'r', 't', 'd', 's', 'L', 'a', 'y', 'e', 'r', '\032', '\301', '\001', '\n', '\t', 'D', 'i', 's', 'k', 'L', 'a', 'y', 'e', 'r', '\022', '!',
'\n', '\014', 's', 'y', 'm', 'l', 'i', 'n', 'k', '_', 'r', 'o', 'o', 't', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\013', 's', 'y', 'm',
'l', 'i', 'n', 'k', 'R', 'o', 'o', 't', '\022', '\"', '\n', '\014', 's', 'u', 'b', 'd', 'i', 'r', 'e', 'c', 't', 'o', 'r', 'y', '\030',
'\003', ' ', '\001', '(', '\t', 'R', '\014', 's', 'u', 'b', 'd', 'i', 'r', 'e', 'c', 't', 'o', 'r', 'y', '\022', '4', '\n', '\026', 'a', 'p',
'p', 'e', 'n', 'd', '_', 's', 'e', 'r', 'v', 'i', 'c', 'e', '_', 'c', 'l', 'u', 's', 't', 'e', 'r', '\030', '\002', ' ', '\001', '(',
'\010', 'R', '\024', 'a', 'p', 'p', 'e', 'n', 'd', 'S', 'e', 'r', 'v', 'i', 'c', 'e', 'C', 'l', 'u', 's', 't', 'e', 'r', ':', '7',
'\232', '\305', '\210', '\036', '2', '\n', '0', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's',
't', 'r', 'a', 'p', '.', 'v', '2', '.', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', '.', 'D', 'i', 's', 'k',
'L', 'a', 'y', 'e', 'r', '\032', 'F', '\n', '\n', 'A', 'd', 'm', 'i', 'n', 'L', 'a', 'y', 'e', 'r', ':', '8', '\232', '\305', '\210', '\036',
'3', '\n', '1', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p',
'.', 'v', '2', '.', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', '.', 'A', 'd', 'm', 'i', 'n', 'L', 'a', 'y',
'e', 'r', '\032', '\235', '\001', '\n', '\t', 'R', 't', 'd', 's', 'L', 'a', 'y', 'e', 'r', '\022', '\022', '\n', '\004', 'n', 'a', 'm', 'e', '\030',
'\001', ' ', '\001', '(', '\t', 'R', '\004', 'n', 'a', 'm', 'e', '\022', 'C', '\n', '\013', 'r', 't', 'd', 's', '_', 'c', 'o', 'n', 'f', 'i',
'g', '\030', '\002', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o',
'r', 'e', '.', 'v', '3', '.', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 'o', 'u', 'r', 'c', 'e', 'R', '\n', 'r', 't', 'd', 's', 'C',
'o', 'n', 'f', 'i', 'g', ':', '7', '\232', '\305', '\210', '\036', '2', '\n', '0', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i',
'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'L', 'a', 'y',
'e', 'r', '.', 'R', 't', 'd', 's', 'L', 'a', 'y', 'e', 'r', ':', '-', '\232', '\305', '\210', '\036', '(', '\n', '&', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '2', '.', 'R', 'u', 'n',
't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', 'B', '\026', '\n', '\017', 'l', 'a', 'y', 'e', 'r', '_', 's', 'p', 'e', 'c', 'i', 'f',
'i', 'e', 'r', '\022', '\003', '\370', 'B', '\001', '\"', '\202', '\001', '\n', '\016', 'L', 'a', 'y', 'e', 'r', 'e', 'd', 'R', 'u', 'n', 't', 'i',
'm', 'e', '\022', '?', '\n', '\006', 'l', 'a', 'y', 'e', 'r', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', '\'', '.', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', '.', 'R', 'u', 'n',
't', 'i', 'm', 'e', 'L', 'a', 'y', 'e', 'r', 'R', '\006', 'l', 'a', 'y', 'e', 'r', 's', ':', '/', '\232', '\305', '\210', '\036', '*', '\n',
'(', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', '.', 'v',
'2', '.', 'L', 'a', 'y', 'e', 'r', 'e', 'd', 'R', 'u', 'n', 't', 'i', 'm', 'e', 'B', 'C', '\n', '\'', 'i', 'o', '.', 'e', 'n',
'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'b', 'o', 'o',
't', 's', 't', 'r', 'a', 'p', '.', 'v', '3', 'B', '\016', 'B', 'o', 'o', 't', 's', 't', 'r', 'a', 'p', 'P', 'r', 'o', 't', 'o',
'P', '\001', '\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[22] = {
&envoy_config_cluster_v3_cluster_proto_upbdefinit,
&envoy_config_core_v3_address_proto_upbdefinit,
&envoy_config_core_v3_base_proto_upbdefinit,
&envoy_config_core_v3_config_source_proto_upbdefinit,
&envoy_config_core_v3_event_service_config_proto_upbdefinit,
&envoy_config_core_v3_extension_proto_upbdefinit,
&envoy_config_core_v3_socket_option_proto_upbdefinit,
&envoy_config_listener_v3_listener_proto_upbdefinit,
&envoy_config_metrics_v3_stats_proto_upbdefinit,
&envoy_config_overload_v3_overload_proto_upbdefinit,
&envoy_config_trace_v3_http_tracer_proto_upbdefinit,
&envoy_extensions_transport_sockets_tls_v3_secret_proto_upbdefinit,
&envoy_type_v3_percent_proto_upbdefinit,
&google_protobuf_duration_proto_upbdefinit,
&google_protobuf_struct_proto_upbdefinit,
&google_protobuf_wrappers_proto_upbdefinit,
&udpa_annotations_migrate_proto_upbdefinit,
&udpa_annotations_security_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
&validate_validate_proto_upbdefinit,
NULL
};
upb_def_init envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit = {
deps,
layouts,
"envoy/config/bootstrap/v3/bootstrap.proto",
UPB_STRVIEW_INIT(descriptor, 6993)
};

@ -0,0 +1,115 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/bootstrap/v3/bootstrap.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_CONFIG_BOOTSTRAP_V3_BOOTSTRAP_PROTO_UPBDEFS_H_
#define ENVOY_CONFIG_BOOTSTRAP_V3_BOOTSTRAP_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Bootstrap_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Bootstrap");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Bootstrap_StaticResources_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Bootstrap.StaticResources");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Bootstrap_DynamicResources_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Bootstrap.DynamicResources");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Bootstrap_CertificateProviderInstancesEntry_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Bootstrap.CertificateProviderInstancesEntry");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Admin_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Admin");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_ClusterManager_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.ClusterManager");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_ClusterManager_OutlierDetection_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.ClusterManager.OutlierDetection");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Watchdogs_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Watchdogs");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Watchdog_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Watchdog");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Watchdog_WatchdogAction_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Watchdog.WatchdogAction");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_FatalAction_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.FatalAction");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_Runtime_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.Runtime");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_RuntimeLayer_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.RuntimeLayer");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_RuntimeLayer_DiskLayer_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.RuntimeLayer.DiskLayer");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_RuntimeLayer_AdminLayer_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.RuntimeLayer.AdminLayer");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_RuntimeLayer_RtdsLayer_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.RuntimeLayer.RtdsLayer");
}
UPB_INLINE const upb_msgdef *envoy_config_bootstrap_v3_LayeredRuntime_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_bootstrap_v3_bootstrap_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.bootstrap.v3.LayeredRuntime");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_CONFIG_BOOTSTRAP_V3_BOOTSTRAP_PROTO_UPBDEFS_H_ */

@ -0,0 +1,141 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/metrics/v3/stats.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/config/metrics/v3/stats.upbdefs.h"
extern upb_def_init envoy_config_core_v3_address_proto_upbdefinit;
extern upb_def_init envoy_type_matcher_v3_string_proto_upbdefinit;
extern upb_def_init google_protobuf_any_proto_upbdefinit;
extern upb_def_init google_protobuf_wrappers_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern upb_def_init validate_validate_proto_upbdefinit;
extern const upb_msglayout envoy_config_metrics_v3_StatsSink_msginit;
extern const upb_msglayout envoy_config_metrics_v3_StatsConfig_msginit;
extern const upb_msglayout envoy_config_metrics_v3_StatsMatcher_msginit;
extern const upb_msglayout envoy_config_metrics_v3_TagSpecifier_msginit;
extern const upb_msglayout envoy_config_metrics_v3_HistogramBucketSettings_msginit;
extern const upb_msglayout envoy_config_metrics_v3_StatsdSink_msginit;
extern const upb_msglayout envoy_config_metrics_v3_DogStatsdSink_msginit;
extern const upb_msglayout envoy_config_metrics_v3_HystrixSink_msginit;
static const upb_msglayout *layouts[8] = {
&envoy_config_metrics_v3_StatsSink_msginit,
&envoy_config_metrics_v3_StatsConfig_msginit,
&envoy_config_metrics_v3_StatsMatcher_msginit,
&envoy_config_metrics_v3_TagSpecifier_msginit,
&envoy_config_metrics_v3_HistogramBucketSettings_msginit,
&envoy_config_metrics_v3_StatsdSink_msginit,
&envoy_config_metrics_v3_DogStatsdSink_msginit,
&envoy_config_metrics_v3_HystrixSink_msginit,
};
static const char descriptor[2091] = {'\n', '#', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'm', 'e', 't', 'r', 'i', 'c', 's', '/', 'v', '3',
'/', 's', 't', 'a', 't', 's', '.', 'p', 'r', 'o', 't', 'o', '\022', '\027', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i',
'g', '.', 'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '3', '\032', '\"', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i',
'g', '/', 'c', 'o', 'r', 'e', '/', 'v', '3', '/', 'a', 'd', 'd', 'r', 'e', 's', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '\"',
'e', 'n', 'v', 'o', 'y', '/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't', 'c', 'h', 'e', 'r', '/', 'v', '3', '/', 's', 't', 'r',
'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\031', 'g', 'o', 'o', 'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u',
'f', '/', 'a', 'n', 'y', '.', 'p', 'r', 'o', 't', 'o', '\032', '\036', 'g', 'o', 'o', 'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o',
'b', 'u', 'f', '/', 'w', 'r', 'a', 'p', 'p', 'e', 'r', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '\035', 'u', 'd', 'p', 'a', '/',
'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a', 't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o', '\032',
'!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o', 'n',
'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\027', 'v', 'a', 'l', 'i', 'd', 'a', 't', 'e', '/', 'v', 'a', 'l', 'i', 'd',
'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\"', '\241', '\001', '\n', '\t', 'S', 't', 'a', 't', 's', 'S', 'i', 'n', 'k', '\022', '\022',
'\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\004', 'n', 'a', 'm', 'e', '\022', '9', '\n', '\014', 't', 'y', 'p',
'e', 'd', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\003', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.',
'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'H', '\000', 'R', '\013', 't', 'y', 'p', 'e', 'd', 'C', 'o', 'n', 'f',
'i', 'g', ':', '(', '\232', '\305', '\210', '\036', '#', '\n', '!', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm',
'e', 't', 'r', 'i', 'c', 's', '.', 'v', '2', '.', 'S', 't', 'a', 't', 's', 'S', 'i', 'n', 'k', 'B', '\r', '\n', '\013', 'c', 'o',
'n', 'f', 'i', 'g', '_', 't', 'y', 'p', 'e', 'J', '\004', '\010', '\002', '\020', '\003', 'R', '\006', 'c', 'o', 'n', 'f', 'i', 'g', '\"', '\206',
'\003', '\n', '\013', 'S', 't', 'a', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', '\022', 'D', '\n', '\n', 's', 't', 'a', 't', 's', '_', 't',
'a', 'g', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', '%', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.',
'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '3', '.', 'T', 'a', 'g', 'S', 'p', 'e', 'c', 'i', 'f', 'i', 'e', 'r', 'R', '\t',
's', 't', 'a', 't', 's', 'T', 'a', 'g', 's', '\022', 'K', '\n', '\024', 'u', 's', 'e', '_', 'a', 'l', 'l', '_', 'd', 'e', 'f', 'a',
'u', 'l', 't', '_', 't', 'a', 'g', 's', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p',
'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'B', 'o', 'o', 'l', 'V', 'a', 'l', 'u', 'e', 'R', '\021', 'u', 's', 'e', 'A', 'l', 'l',
'D', 'e', 'f', 'a', 'u', 'l', 't', 'T', 'a', 'g', 's', '\022', 'J', '\n', '\r', 's', 't', 'a', 't', 's', '_', 'm', 'a', 't', 'c',
'h', 'e', 'r', '\030', '\003', ' ', '\001', '(', '\013', '2', '%', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.',
'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '3', '.', 'S', 't', 'a', 't', 's', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'R', '\014',
's', 't', 'a', 't', 's', 'M', 'a', 't', 'c', 'h', 'e', 'r', '\022', 'l', '\n', '\031', 'h', 'i', 's', 't', 'o', 'g', 'r', 'a', 'm',
'_', 'b', 'u', 'c', 'k', 'e', 't', '_', 's', 'e', 't', 't', 'i', 'n', 'g', 's', '\030', '\004', ' ', '\003', '(', '\013', '2', '0', '.',
'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '3', '.', 'H',
'i', 's', 't', 'o', 'g', 'r', 'a', 'm', 'B', 'u', 'c', 'k', 'e', 't', 'S', 'e', 't', 't', 'i', 'n', 'g', 's', 'R', '\027', 'h',
'i', 's', 't', 'o', 'g', 'r', 'a', 'm', 'B', 'u', 'c', 'k', 'e', 't', 'S', 'e', 't', 't', 'i', 'n', 'g', 's', ':', '*', '\232',
'\305', '\210', '\036', '%', '\n', '#', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c',
's', '.', 'v', '2', '.', 'S', 't', 'a', 't', 's', 'C', 'o', 'n', 'f', 'i', 'g', '\"', '\230', '\002', '\n', '\014', 'S', 't', 'a', 't',
's', 'M', 'a', 't', 'c', 'h', 'e', 'r', '\022', '\037', '\n', '\n', 'r', 'e', 'j', 'e', 'c', 't', '_', 'a', 'l', 'l', '\030', '\001', ' ',
'\001', '(', '\010', 'H', '\000', 'R', '\t', 'r', 'e', 'j', 'e', 'c', 't', 'A', 'l', 'l', '\022', 'Q', '\n', '\016', 'e', 'x', 'c', 'l', 'u',
's', 'i', 'o', 'n', '_', 'l', 'i', 's', 't', '\030', '\002', ' ', '\001', '(', '\013', '2', '(', '.', 'e', 'n', 'v', 'o', 'y', '.', 't',
'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'L', 'i', 's', 't', 'S', 't', 'r', 'i', 'n', 'g',
'M', 'a', 't', 'c', 'h', 'e', 'r', 'H', '\000', 'R', '\r', 'e', 'x', 'c', 'l', 'u', 's', 'i', 'o', 'n', 'L', 'i', 's', 't', '\022',
'Q', '\n', '\016', 'i', 'n', 'c', 'l', 'u', 's', 'i', 'o', 'n', '_', 'l', 'i', 's', 't', '\030', '\003', ' ', '\001', '(', '\013', '2', '(',
'.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'L', 'i',
's', 't', 'S', 't', 'r', 'i', 'n', 'g', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'H', '\000', 'R', '\r', 'i', 'n', 'c', 'l', 'u', 's',
'i', 'o', 'n', 'L', 'i', 's', 't', ':', '+', '\232', '\305', '\210', '\036', '&', '\n', '$', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n',
'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '2', '.', 'S', 't', 'a', 't', 's', 'M', 'a', 't', 'c', 'h',
'e', 'r', 'B', '\024', '\n', '\r', 's', 't', 'a', 't', 's', '_', 'm', 'a', 't', 'c', 'h', 'e', 'r', '\022', '\003', '\370', 'B', '\001', '\"',
'\250', '\001', '\n', '\014', 'T', 'a', 'g', 'S', 'p', 'e', 'c', 'i', 'f', 'i', 'e', 'r', '\022', '\031', '\n', '\010', 't', 'a', 'g', '_', 'n',
'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\007', 't', 'a', 'g', 'N', 'a', 'm', 'e', '\022', ' ', '\n', '\005', 'r', 'e', 'g',
'e', 'x', '\030', '\002', ' ', '\001', '(', '\t', 'B', '\010', '\372', 'B', '\005', 'r', '\003', '(', '\200', '\010', 'H', '\000', 'R', '\005', 'r', 'e', 'g',
'e', 'x', '\022', '!', '\n', '\013', 'f', 'i', 'x', 'e', 'd', '_', 'v', 'a', 'l', 'u', 'e', '\030', '\003', ' ', '\001', '(', '\t', 'H', '\000',
'R', '\n', 'f', 'i', 'x', 'e', 'd', 'V', 'a', 'l', 'u', 'e', ':', '+', '\232', '\305', '\210', '\036', '&', '\n', '$', 'e', 'n', 'v', 'o',
'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '2', '.', 'T', 'a', 'g', 'S', 'p',
'e', 'c', 'i', 'f', 'i', 'e', 'r', 'B', '\013', '\n', '\t', 't', 'a', 'g', '_', 'v', 'a', 'l', 'u', 'e', '\"', '\222', '\001', '\n', '\027',
'H', 'i', 's', 't', 'o', 'g', 'r', 'a', 'm', 'B', 'u', 'c', 'k', 'e', 't', 'S', 'e', 't', 't', 'i', 'n', 'g', 's', '\022', 'D',
'\n', '\005', 'm', 'a', 't', 'c', 'h', '\030', '\001', ' ', '\001', '(', '\013', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p',
'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'S', 't', 'r', 'i', 'n', 'g', 'M', 'a', 't', 'c', 'h', 'e',
'r', 'B', '\010', '\372', 'B', '\005', '\212', '\001', '\002', '\020', '\001', 'R', '\005', 'm', 'a', 't', 'c', 'h', '\022', '1', '\n', '\007', 'b', 'u', 'c',
'k', 'e', 't', 's', '\030', '\002', ' ', '\003', '(', '\001', 'B', '\027', '\372', 'B', '\024', '\222', '\001', '\021', '\010', '\001', '\030', '\001', '\"', '\013', '\022',
'\t', '!', '\000', '\000', '\000', '\000', '\000', '\000', '\000', '\000', 'R', '\007', 'b', 'u', 'c', 'k', 'e', 't', 's', '\"', '\317', '\001', '\n', '\n', 'S',
't', 'a', 't', 's', 'd', 'S', 'i', 'n', 'k', '\022', '9', '\n', '\007', 'a', 'd', 'd', 'r', 'e', 's', 's', '\030', '\001', ' ', '\001', '(',
'\013', '2', '\035', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.',
'A', 'd', 'd', 'r', 'e', 's', 's', 'H', '\000', 'R', '\007', 'a', 'd', 'd', 'r', 'e', 's', 's', '\022', '*', '\n', '\020', 't', 'c', 'p',
'_', 'c', 'l', 'u', 's', 't', 'e', 'r', '_', 'n', 'a', 'm', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'H', '\000', 'R', '\016', 't', 'c',
'p', 'C', 'l', 'u', 's', 't', 'e', 'r', 'N', 'a', 'm', 'e', '\022', '\026', '\n', '\006', 'p', 'r', 'e', 'f', 'i', 'x', '\030', '\003', ' ',
'\001', '(', '\t', 'R', '\006', 'p', 'r', 'e', 'f', 'i', 'x', ':', ')', '\232', '\305', '\210', '\036', '$', '\n', '\"', 'e', 'n', 'v', 'o', 'y',
'.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '2', '.', 'S', 't', 'a', 't', 's', 'd',
'S', 'i', 'n', 'k', 'B', '\027', '\n', '\020', 's', 't', 'a', 't', 's', 'd', '_', 's', 'p', 'e', 'c', 'i', 'f', 'i', 'e', 'r', '\022',
'\003', '\370', 'B', '\001', '\"', '\217', '\002', '\n', '\r', 'D', 'o', 'g', 'S', 't', 'a', 't', 's', 'd', 'S', 'i', 'n', 'k', '\022', '9', '\n',
'\007', 'a', 'd', 'd', 'r', 'e', 's', 's', '\030', '\001', ' ', '\001', '(', '\013', '2', '\035', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o',
'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'A', 'd', 'd', 'r', 'e', 's', 's', 'H', '\000', 'R', '\007', 'a',
'd', 'd', 'r', 'e', 's', 's', '\022', '\026', '\n', '\006', 'p', 'r', 'e', 'f', 'i', 'x', '\030', '\003', ' ', '\001', '(', '\t', 'R', '\006', 'p',
'r', 'e', 'f', 'i', 'x', '\022', 'Z', '\n', '\026', 'm', 'a', 'x', '_', 'b', 'y', 't', 'e', 's', '_', 'p', 'e', 'r', '_', 'd', 'a',
't', 'a', 'g', 'r', 'a', 'm', '\030', '\004', ' ', '\001', '(', '\013', '2', '\034', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o',
't', 'o', 'b', 'u', 'f', '.', 'U', 'I', 'n', 't', '6', '4', 'V', 'a', 'l', 'u', 'e', 'B', '\007', '\372', 'B', '\004', '2', '\002', ' ',
'\000', 'R', '\023', 'm', 'a', 'x', 'B', 'y', 't', 'e', 's', 'P', 'e', 'r', 'D', 'a', 't', 'a', 'g', 'r', 'a', 'm', ':', ',', '\232',
'\305', '\210', '\036', '\'', '\n', '%', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e', 't', 'r', 'i', 'c',
's', '.', 'v', '2', '.', 'D', 'o', 'g', 'S', 't', 'a', 't', 's', 'd', 'S', 'i', 'n', 'k', 'B', '\033', '\n', '\024', 'd', 'o', 'g',
'_', 's', 't', 'a', 't', 's', 'd', '_', 's', 'p', 'e', 'c', 'i', 'f', 'i', 'e', 'r', '\022', '\003', '\370', 'B', '\001', 'J', '\004', '\010',
'\002', '\020', '\003', '\"', 'Z', '\n', '\013', 'H', 'y', 's', 't', 'r', 'i', 'x', 'S', 'i', 'n', 'k', '\022', '\037', '\n', '\013', 'n', 'u', 'm',
'_', 'b', 'u', 'c', 'k', 'e', 't', 's', '\030', '\001', ' ', '\001', '(', '\003', 'R', '\n', 'n', 'u', 'm', 'B', 'u', 'c', 'k', 'e', 't',
's', ':', '*', '\232', '\305', '\210', '\036', '%', '\n', '#', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'm', 'e',
't', 'r', 'i', 'c', 's', '.', 'v', '2', '.', 'H', 'y', 's', 't', 'r', 'i', 'x', 'S', 'i', 'n', 'k', 'B', '=', '\n', '%', 'i',
'o', '.', 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g',
'.', 'm', 'e', 't', 'r', 'i', 'c', 's', '.', 'v', '3', 'B', '\n', 'S', 't', 'a', 't', 's', 'P', 'r', 'o', 't', 'o', 'P', '\001',
'\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[8] = {
&envoy_config_core_v3_address_proto_upbdefinit,
&envoy_type_matcher_v3_string_proto_upbdefinit,
&google_protobuf_any_proto_upbdefinit,
&google_protobuf_wrappers_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
&validate_validate_proto_upbdefinit,
NULL
};
upb_def_init envoy_config_metrics_v3_stats_proto_upbdefinit = {
deps,
layouts,
"envoy/config/metrics/v3/stats.proto",
UPB_STRVIEW_INIT(descriptor, 2091)
};

@ -0,0 +1,70 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/metrics/v3/stats.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_CONFIG_METRICS_V3_STATS_PROTO_UPBDEFS_H_
#define ENVOY_CONFIG_METRICS_V3_STATS_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_config_metrics_v3_stats_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_StatsSink_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.StatsSink");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_StatsConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.StatsConfig");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_StatsMatcher_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.StatsMatcher");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_TagSpecifier_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.TagSpecifier");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_HistogramBucketSettings_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.HistogramBucketSettings");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_StatsdSink_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.StatsdSink");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_DogStatsdSink_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.DogStatsdSink");
}
UPB_INLINE const upb_msgdef *envoy_config_metrics_v3_HystrixSink_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_metrics_v3_stats_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.metrics.v3.HystrixSink");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_CONFIG_METRICS_V3_STATS_PROTO_UPBDEFS_H_ */

@ -0,0 +1,141 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/overload/v3/overload.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/config/overload/v3/overload.upbdefs.h"
extern upb_def_init envoy_type_v3_percent_proto_upbdefinit;
extern upb_def_init google_protobuf_any_proto_upbdefinit;
extern upb_def_init google_protobuf_duration_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern upb_def_init validate_validate_proto_upbdefinit;
extern const upb_msglayout envoy_config_overload_v3_ResourceMonitor_msginit;
extern const upb_msglayout envoy_config_overload_v3_ThresholdTrigger_msginit;
extern const upb_msglayout envoy_config_overload_v3_ScaledTrigger_msginit;
extern const upb_msglayout envoy_config_overload_v3_Trigger_msginit;
extern const upb_msglayout envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit;
extern const upb_msglayout envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit;
extern const upb_msglayout envoy_config_overload_v3_OverloadAction_msginit;
extern const upb_msglayout envoy_config_overload_v3_OverloadManager_msginit;
static const upb_msglayout *layouts[8] = {
&envoy_config_overload_v3_ResourceMonitor_msginit,
&envoy_config_overload_v3_ThresholdTrigger_msginit,
&envoy_config_overload_v3_ScaledTrigger_msginit,
&envoy_config_overload_v3_Trigger_msginit,
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_msginit,
&envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_msginit,
&envoy_config_overload_v3_OverloadAction_msginit,
&envoy_config_overload_v3_OverloadManager_msginit,
};
static const char descriptor[2145] = {'\n', '\'', 'e', 'n', 'v', 'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '/', 'v',
'3', '/', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'p', 'r', 'o', 't', 'o', '\022', '\030', 'e', 'n', 'v', 'o', 'y', '.', 'c',
'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '\032', '\033', 'e', 'n', 'v', 'o', 'y', '/',
't', 'y', 'p', 'e', '/', 'v', '3', '/', 'p', 'e', 'r', 'c', 'e', 'n', 't', '.', 'p', 'r', 'o', 't', 'o', '\032', '\031', 'g', 'o',
'o', 'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 'a', 'n', 'y', '.', 'p', 'r', 'o', 't', 'o', '\032', '\036',
'g', 'o', 'o', 'g', 'l', 'e', '/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 'd', 'u', 'r', 'a', 't', 'i', 'o', 'n', '.',
'p', 'r', 'o', 't', 'o', '\032', '\035', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's',
't', 'a', 't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't',
'i', 'o', 'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\027', 'v', 'a',
'l', 'i', 'd', 'a', 't', 'e', '/', 'v', 'a', 'l', 'i', 'd', 'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\"', '\274', '\001', '\n',
'\017', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'M', 'o', 'n', 'i', 't', 'o', 'r', '\022', '\033', '\n', '\004', 'n', 'a', 'm', 'e', '\030',
'\001', ' ', '\001', '(', '\t', 'B', '\007', '\372', 'B', '\004', 'r', '\002', '\020', '\001', 'R', '\004', 'n', 'a', 'm', 'e', '\022', '9', '\n', '\014', 't',
'y', 'p', 'e', 'd', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\003', ' ', '\001', '(', '\013', '2', '\024', '.', 'g', 'o', 'o', 'g', 'l',
'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'H', '\000', 'R', '\013', 't', 'y', 'p', 'e', 'd', 'C', 'o',
'n', 'f', 'i', 'g', ':', '4', '\232', '\305', '\210', '\036', '/', '\n', '-', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g',
'.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'R', 'e', 's', 'o', 'u', 'r', 'c',
'e', 'M', 'o', 'n', 'i', 't', 'o', 'r', 'B', '\r', '\n', '\013', 'c', 'o', 'n', 'f', 'i', 'g', '_', 't', 'y', 'p', 'e', 'J', '\004',
'\010', '\002', '\020', '\003', 'R', '\006', 'c', 'o', 'n', 'f', 'i', 'g', '\"', 'x', '\n', '\020', 'T', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd',
'T', 'r', 'i', 'g', 'g', 'e', 'r', '\022', '-', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\001', ' ', '\001', '(', '\001', 'B', '\027', '\372',
'B', '\024', '\022', '\022', '\031', '\000', '\000', '\000', '\000', '\000', '\000', '\360', '?', ')', '\000', '\000', '\000', '\000', '\000', '\000', '\000', '\000', 'R', '\005', 'v',
'a', 'l', 'u', 'e', ':', '5', '\232', '\305', '\210', '\036', '0', '\n', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g',
'.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'T', 'h', 'r', 'e', 's', 'h', 'o',
'l', 'd', 'T', 'r', 'i', 'g', 'g', 'e', 'r', '\"', '\241', '\001', '\n', '\r', 'S', 'c', 'a', 'l', 'e', 'd', 'T', 'r', 'i', 'g', 'g',
'e', 'r', '\022', 'D', '\n', '\021', 's', 'c', 'a', 'l', 'i', 'n', 'g', '_', 't', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\030', '\001',
' ', '\001', '(', '\001', 'B', '\027', '\372', 'B', '\024', '\022', '\022', '\031', '\000', '\000', '\000', '\000', '\000', '\000', '\360', '?', ')', '\000', '\000', '\000', '\000',
'\000', '\000', '\000', '\000', 'R', '\020', 's', 'c', 'a', 'l', 'i', 'n', 'g', 'T', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\022', 'J', '\n',
'\024', 's', 'a', 't', 'u', 'r', 'a', 't', 'i', 'o', 'n', '_', 't', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\030', '\002', ' ', '\001',
'(', '\001', 'B', '\027', '\372', 'B', '\024', '\022', '\022', '\031', '\000', '\000', '\000', '\000', '\000', '\000', '\360', '?', ')', '\000', '\000', '\000', '\000', '\000', '\000',
'\000', '\000', 'R', '\023', 's', 'a', 't', 'u', 'r', 'a', 't', 'i', 'o', 'n', 'T', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\"', '\371',
'\001', '\n', '\007', 'T', 'r', 'i', 'g', 'g', 'e', 'r', '\022', '\033', '\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'B',
'\007', '\372', 'B', '\004', 'r', '\002', '\020', '\001', 'R', '\004', 'n', 'a', 'm', 'e', '\022', 'J', '\n', '\t', 't', 'h', 'r', 'e', 's', 'h', 'o',
'l', 'd', '\030', '\002', ' ', '\001', '(', '\013', '2', '*', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o',
'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'T', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', 'T', 'r', 'i', 'g', 'g',
'e', 'r', 'H', '\000', 'R', '\t', 't', 'h', 'r', 'e', 's', 'h', 'o', 'l', 'd', '\022', 'A', '\n', '\006', 's', 'c', 'a', 'l', 'e', 'd',
'\030', '\003', ' ', '\001', '(', '\013', '2', '\'', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e',
'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'S', 'c', 'a', 'l', 'e', 'd', 'T', 'r', 'i', 'g', 'g', 'e', 'r', 'H', '\000', 'R',
'\006', 's', 'c', 'a', 'l', 'e', 'd', ':', ',', '\232', '\305', '\210', '\036', '\'', '\n', '%', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n',
'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'T', 'r', 'i', 'g',
'g', 'e', 'r', 'B', '\024', '\n', '\r', 't', 'r', 'i', 'g', 'g', 'e', 'r', '_', 'o', 'n', 'e', 'o', 'f', '\022', '\003', '\370', 'B', '\001',
'\"', '\247', '\004', '\n', '\037', 'S', 'c', 'a', 'l', 'e', 'T', 'i', 'm', 'e', 'r', 's', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'A',
'c', 't', 'i', 'o', 'n', 'C', 'o', 'n', 'f', 'i', 'g', '\022', '~', '\n', '\023', 't', 'i', 'm', 'e', 'r', '_', 's', 'c', 'a', 'l',
'e', '_', 'f', 'a', 'c', 't', 'o', 'r', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', 'D', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c',
'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'S', 'c', 'a', 'l', 'e', 'T', 'i',
'm', 'e', 'r', 's', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'A', 'c', 't', 'i', 'o', 'n', 'C', 'o', 'n', 'f', 'i', 'g', '.',
'S', 'c', 'a', 'l', 'e', 'T', 'i', 'm', 'e', 'r', 'B', '\010', '\372', 'B', '\005', '\222', '\001', '\002', '\010', '\001', 'R', '\021', 't', 'i', 'm',
'e', 'r', 'S', 'c', 'a', 'l', 'e', 'F', 'a', 'c', 't', 'o', 'r', 's', '\032', '\200', '\002', '\n', '\n', 'S', 'c', 'a', 'l', 'e', 'T',
'i', 'm', 'e', 'r', '\022', 'e', '\n', '\005', 't', 'i', 'm', 'e', 'r', '\030', '\001', ' ', '\001', '(', '\016', '2', 'C', '.', 'e', 'n', 'v',
'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'S', 'c', 'a',
'l', 'e', 'T', 'i', 'm', 'e', 'r', 's', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'A', 'c', 't', 'i', 'o', 'n', 'C', 'o', 'n',
'f', 'i', 'g', '.', 'T', 'i', 'm', 'e', 'r', 'T', 'y', 'p', 'e', 'B', '\n', '\372', 'B', '\007', '\202', '\001', '\004', '\020', '\001', ' ', '\000',
'R', '\005', 't', 'i', 'm', 'e', 'r', '\022', '<', '\n', '\013', 'm', 'i', 'n', '_', 't', 'i', 'm', 'e', 'o', 'u', 't', '\030', '\002', ' ',
'\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'D', 'u', 'r',
'a', 't', 'i', 'o', 'n', 'H', '\000', 'R', '\n', 'm', 'i', 'n', 'T', 'i', 'm', 'e', 'o', 'u', 't', '\022', '5', '\n', '\t', 'm', 'i',
'n', '_', 's', 'c', 'a', 'l', 'e', '\030', '\003', ' ', '\001', '(', '\013', '2', '\026', '.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p',
'e', '.', 'v', '3', '.', 'P', 'e', 'r', 'c', 'e', 'n', 't', 'H', '\000', 'R', '\010', 'm', 'i', 'n', 'S', 'c', 'a', 'l', 'e', 'B',
'\026', '\n', '\017', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '_', 'a', 'd', 'j', 'u', 's', 't', '\022', '\003', '\370', 'B', '\001', '\"', '\200',
'\001', '\n', '\t', 'T', 'i', 'm', 'e', 'r', 'T', 'y', 'p', 'e', '\022', '\017', '\n', '\013', 'U', 'N', 'S', 'P', 'E', 'C', 'I', 'F', 'I',
'E', 'D', '\020', '\000', '\022', '#', '\n', '\037', 'H', 'T', 'T', 'P', '_', 'D', 'O', 'W', 'N', 'S', 'T', 'R', 'E', 'A', 'M', '_', 'C',
'O', 'N', 'N', 'E', 'C', 'T', 'I', 'O', 'N', '_', 'I', 'D', 'L', 'E', '\020', '\001', '\022', '\037', '\n', '\033', 'H', 'T', 'T', 'P', '_',
'D', 'O', 'W', 'N', 'S', 'T', 'R', 'E', 'A', 'M', '_', 'S', 'T', 'R', 'E', 'A', 'M', '_', 'I', 'D', 'L', 'E', '\020', '\002', '\022',
'\034', '\n', '\030', 'T', 'R', 'A', 'N', 'S', 'P', 'O', 'R', 'T', '_', 'S', 'O', 'C', 'K', 'E', 'T', '_', 'C', 'O', 'N', 'N', 'E',
'C', 'T', '\020', '\003', '\"', '\344', '\001', '\n', '\016', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'A', 'c', 't', 'i', 'o', 'n', '\022', '\033',
'\n', '\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'B', '\007', '\372', 'B', '\004', 'r', '\002', '\020', '\001', 'R', '\004', 'n', 'a',
'm', 'e', '\022', 'G', '\n', '\010', 't', 'r', 'i', 'g', 'g', 'e', 'r', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', '!', '.', 'e', 'n',
'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'T', 'r',
'i', 'g', 'g', 'e', 'r', 'B', '\010', '\372', 'B', '\005', '\222', '\001', '\002', '\010', '\001', 'R', '\010', 't', 'r', 'i', 'g', 'g', 'e', 'r', 's',
'\022', '7', '\n', '\014', 't', 'y', 'p', 'e', 'd', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\003', ' ', '\001', '(', '\013', '2', '\024', '.',
'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.', 'A', 'n', 'y', 'R', '\013', 't', 'y', 'p', 'e',
'd', 'C', 'o', 'n', 'f', 'i', 'g', ':', '3', '\232', '\305', '\210', '\036', '.', '\n', ',', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n',
'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'O', 'v', 'e', 'r',
'l', 'o', 'a', 'd', 'A', 'c', 't', 'i', 'o', 'n', '\"', '\263', '\002', '\n', '\017', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'M', 'a',
'n', 'a', 'g', 'e', 'r', '\022', 'D', '\n', '\020', 'r', 'e', 'f', 'r', 'e', 's', 'h', '_', 'i', 'n', 't', 'e', 'r', 'v', 'a', 'l',
'\030', '\001', ' ', '\001', '(', '\013', '2', '\031', '.', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '.',
'D', 'u', 'r', 'a', 't', 'i', 'o', 'n', 'R', '\017', 'r', 'e', 'f', 'r', 'e', 's', 'h', 'I', 'n', 't', 'e', 'r', 'v', 'a', 'l',
'\022', '`', '\n', '\021', 'r', 'e', 's', 'o', 'u', 'r', 'c', 'e', '_', 'm', 'o', 'n', 'i', 't', 'o', 'r', 's', '\030', '\002', ' ', '\003',
'(', '\013', '2', ')', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a',
'd', '.', 'v', '3', '.', 'R', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'M', 'o', 'n', 'i', 't', 'o', 'r', 'B', '\010', '\372', 'B', '\005',
'\222', '\001', '\002', '\010', '\001', 'R', '\020', 'r', 'e', 's', 'o', 'u', 'r', 'c', 'e', 'M', 'o', 'n', 'i', 't', 'o', 'r', 's', '\022', 'B',
'\n', '\007', 'a', 'c', 't', 'i', 'o', 'n', 's', '\030', '\003', ' ', '\003', '(', '\013', '2', '(', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c',
'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', '.', 'O', 'v', 'e', 'r', 'l', 'o', 'a',
'd', 'A', 'c', 't', 'i', 'o', 'n', 'R', '\007', 'a', 'c', 't', 'i', 'o', 'n', 's', ':', '4', '\232', '\305', '\210', '\036', '/', '\n', '-',
'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '2', 'a',
'l', 'p', 'h', 'a', '.', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'M', 'a', 'n', 'a', 'g', 'e', 'r', 'B', 'A', '\n', '&', 'i',
'o', '.', 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g',
'.', 'o', 'v', 'e', 'r', 'l', 'o', 'a', 'd', '.', 'v', '3', 'B', '\r', 'O', 'v', 'e', 'r', 'l', 'o', 'a', 'd', 'P', 'r', 'o',
't', 'o', 'P', '\001', '\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[7] = {
&envoy_type_v3_percent_proto_upbdefinit,
&google_protobuf_any_proto_upbdefinit,
&google_protobuf_duration_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
&validate_validate_proto_upbdefinit,
NULL
};
upb_def_init envoy_config_overload_v3_overload_proto_upbdefinit = {
deps,
layouts,
"envoy/config/overload/v3/overload.proto",
UPB_STRVIEW_INIT(descriptor, 2145)
};

@ -0,0 +1,70 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/config/overload/v3/overload.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_CONFIG_OVERLOAD_V3_OVERLOAD_PROTO_UPBDEFS_H_
#define ENVOY_CONFIG_OVERLOAD_V3_OVERLOAD_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_config_overload_v3_overload_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_ResourceMonitor_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.ResourceMonitor");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_ThresholdTrigger_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.ThresholdTrigger");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_ScaledTrigger_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.ScaledTrigger");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_Trigger_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.Trigger");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.ScaleTimersOverloadActionConfig");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_ScaleTimersOverloadActionConfig_ScaleTimer_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.ScaleTimersOverloadActionConfig.ScaleTimer");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_OverloadAction_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.OverloadAction");
}
UPB_INLINE const upb_msgdef *envoy_config_overload_v3_OverloadManager_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_config_overload_v3_overload_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.config.overload.v3.OverloadManager");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_CONFIG_OVERLOAD_V3_OVERLOAD_PROTO_UPBDEFS_H_ */

@ -0,0 +1,130 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/service/status/v3/csds.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/service/status/v3/csds.upbdefs.h"
extern upb_def_init envoy_admin_v3_config_dump_proto_upbdefinit;
extern upb_def_init envoy_config_core_v3_base_proto_upbdefinit;
extern upb_def_init envoy_type_matcher_v3_node_proto_upbdefinit;
extern upb_def_init google_api_annotations_proto_upbdefinit;
extern upb_def_init udpa_annotations_migrate_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern const upb_msglayout envoy_service_status_v3_ClientStatusRequest_msginit;
extern const upb_msglayout envoy_service_status_v3_PerXdsConfig_msginit;
extern const upb_msglayout envoy_service_status_v3_ClientConfig_msginit;
extern const upb_msglayout envoy_service_status_v3_ClientStatusResponse_msginit;
static const upb_msglayout *layouts[4] = {
&envoy_service_status_v3_ClientStatusRequest_msginit,
&envoy_service_status_v3_PerXdsConfig_msginit,
&envoy_service_status_v3_ClientConfig_msginit,
&envoy_service_status_v3_ClientStatusResponse_msginit,
};
static const char descriptor[2001] = {'\n', '\"', 'e', 'n', 'v', 'o', 'y', '/', 's', 'e', 'r', 'v', 'i', 'c', 'e', '/', 's', 't', 'a', 't', 'u', 's', '/', 'v', '3',
'/', 'c', 's', 'd', 's', '.', 'p', 'r', 'o', 't', 'o', '\022', '\027', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c',
'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '\032', ' ', 'e', 'n', 'v', 'o', 'y', '/', 'a', 'd', 'm', 'i', 'n', '/',
'v', '3', '/', 'c', 'o', 'n', 'f', 'i', 'g', '_', 'd', 'u', 'm', 'p', '.', 'p', 'r', 'o', 't', 'o', '\032', '\037', 'e', 'n', 'v',
'o', 'y', '/', 'c', 'o', 'n', 'f', 'i', 'g', '/', 'c', 'o', 'r', 'e', '/', 'v', '3', '/', 'b', 'a', 's', 'e', '.', 'p', 'r',
'o', 't', 'o', '\032', ' ', 'e', 'n', 'v', 'o', 'y', '/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't', 'c', 'h', 'e', 'r', '/', 'v',
'3', '/', 'n', 'o', 'd', 'e', '.', 'p', 'r', 'o', 't', 'o', '\032', '\034', 'g', 'o', 'o', 'g', 'l', 'e', '/', 'a', 'p', 'i', '/',
'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '\036', 'u', 'd', 'p', 'a', '/', 'a',
'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 'm', 'i', 'g', 'r', 'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\032',
'\035', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a', 't', 'u', 's', '.',
'p', 'r', 'o', 't', 'o', '\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 'v',
'e', 'r', 's', 'i', 'o', 'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\"', '\302', '\001', '\n', '\023', 'C', 'l', 'i', 'e', 'n',
't', 'S', 't', 'a', 't', 'u', 's', 'R', 'e', 'q', 'u', 'e', 's', 't', '\022', 'G', '\n', '\r', 'n', 'o', 'd', 'e', '_', 'm', 'a',
't', 'c', 'h', 'e', 'r', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e',
'.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'N', 'o', 'd', 'e', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'R', '\014',
'n', 'o', 'd', 'e', 'M', 'a', 't', 'c', 'h', 'e', 'r', 's', '\022', '.', '\n', '\004', 'n', 'o', 'd', 'e', '\030', '\002', ' ', '\001', '(',
'\013', '2', '\032', '.', 'e', 'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.',
'N', 'o', 'd', 'e', 'R', '\004', 'n', 'o', 'd', 'e', ':', '2', '\232', '\305', '\210', '\036', '-', '\n', '+', 'e', 'n', 'v', 'o', 'y', '.',
's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '2', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S',
't', 'a', 't', 'u', 's', 'R', 'e', 'q', 'u', 'e', 's', 't', '\"', '\360', '\004', '\n', '\014', 'P', 'e', 'r', 'X', 'd', 's', 'C', 'o',
'n', 'f', 'i', 'g', '\022', '=', '\n', '\006', 's', 't', 'a', 't', 'u', 's', '\030', '\001', ' ', '\001', '(', '\016', '2', '%', '.', 'e', 'n',
'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'o', 'n',
'f', 'i', 'g', 'S', 't', 'a', 't', 'u', 's', 'R', '\006', 's', 't', 'a', 't', 'u', 's', '\022', 'T', '\n', '\r', 'c', 'l', 'i', 'e',
'n', 't', '_', 's', 't', 'a', 't', 'u', 's', '\030', '\007', ' ', '\001', '(', '\016', '2', '+', '.', 'e', 'n', 'v', 'o', 'y', '.', 's',
'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'C', 'o',
'n', 'f', 'i', 'g', 'S', 't', 'a', 't', 'u', 's', 'B', '\002', '\030', '\001', 'R', '\014', 'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a',
't', 'u', 's', '\022', 'N', '\n', '\017', 'l', 'i', 's', 't', 'e', 'n', 'e', 'r', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\002', ' ',
'\001', '(', '\013', '2', '#', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'L', 'i', 's', 't',
'e', 'n', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', 'H', '\000', 'R', '\016', 'l', 'i', 's', 't', 'e', 'n',
'e', 'r', 'C', 'o', 'n', 'f', 'i', 'g', '\022', 'K', '\n', '\016', 'c', 'l', 'u', 's', 't', 'e', 'r', '_', 'c', 'o', 'n', 'f', 'i',
'g', '\030', '\003', ' ', '\001', '(', '\013', '2', '\"', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.',
'C', 'l', 'u', 's', 't', 'e', 'r', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', 'H', '\000', 'R', '\r', 'c', 'l', 'u',
's', 't', 'e', 'r', 'C', 'o', 'n', 'f', 'i', 'g', '\022', 'E', '\n', '\014', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o', 'n', 'f', 'i',
'g', '\030', '\004', ' ', '\001', '(', '\013', '2', ' ', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.',
'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', 'H', '\000', 'R', '\013', 'r', 'o', 'u', 't', 'e',
'C', 'o', 'n', 'f', 'i', 'g', '\022', 'X', '\n', '\023', 's', 'c', 'o', 'p', 'e', 'd', '_', 'r', 'o', 'u', 't', 'e', '_', 'c', 'o',
'n', 'f', 'i', 'g', '\030', '\005', ' ', '\001', '(', '\013', '2', '&', '.', 'e', 'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.',
'v', '3', '.', 'S', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p',
'H', '\000', 'R', '\021', 's', 'c', 'o', 'p', 'e', 'd', 'R', 'o', 'u', 't', 'e', 'C', 'o', 'n', 'f', 'i', 'g', '\022', 'N', '\n', '\017',
'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\006', ' ', '\001', '(', '\013', '2', '#', '.', 'e',
'n', 'v', 'o', 'y', '.', 'a', 'd', 'm', 'i', 'n', '.', 'v', '3', '.', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 's', 'C', 'o',
'n', 'f', 'i', 'g', 'D', 'u', 'm', 'p', 'H', '\000', 'R', '\016', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'C', 'o', 'n', 'f', 'i',
'g', ':', '+', '\232', '\305', '\210', '\036', '&', '\n', '$', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's',
't', 'a', 't', 'u', 's', '.', 'v', '2', '.', 'P', 'e', 'r', 'X', 'd', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'B', '\020', '\n', '\016',
'p', 'e', 'r', '_', 'x', 'd', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\"', '\261', '\001', '\n', '\014', 'C', 'l', 'i', 'e', 'n', 't',
'C', 'o', 'n', 'f', 'i', 'g', '\022', '.', '\n', '\004', 'n', 'o', 'd', 'e', '\030', '\001', ' ', '\001', '(', '\013', '2', '\032', '.', 'e', 'n',
'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'o', 'r', 'e', '.', 'v', '3', '.', 'N', 'o', 'd', 'e', 'R', '\004',
'n', 'o', 'd', 'e', '\022', 'D', '\n', '\n', 'x', 'd', 's', '_', 'c', 'o', 'n', 'f', 'i', 'g', '\030', '\002', ' ', '\003', '(', '\013', '2',
'%', '.', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3',
'.', 'P', 'e', 'r', 'X', 'd', 's', 'C', 'o', 'n', 'f', 'i', 'g', 'R', '\t', 'x', 'd', 's', 'C', 'o', 'n', 'f', 'i', 'g', ':',
'+', '\232', '\305', '\210', '\036', '&', '\n', '$', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a',
't', 'u', 's', '.', 'v', '2', '.', 'C', 'l', 'i', 'e', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', '\"', '\212', '\001', '\n', '\024', 'C',
'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\022', '=', '\n', '\006', 'c', 'o',
'n', 'f', 'i', 'g', '\030', '\001', ' ', '\003', '(', '\013', '2', '%', '.', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c',
'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'C', 'o', 'n', 'f', 'i', 'g', 'R',
'\006', 'c', 'o', 'n', 'f', 'i', 'g', ':', '3', '\232', '\305', '\210', '\036', '.', '\n', ',', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r',
'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '2', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't',
'u', 's', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '*', 'K', '\n', '\014', 'C', 'o', 'n', 'f', 'i', 'g', 'S', 't', 'a', 't', 'u',
's', '\022', '\013', '\n', '\007', 'U', 'N', 'K', 'N', 'O', 'W', 'N', '\020', '\000', '\022', '\n', '\n', '\006', 'S', 'Y', 'N', 'C', 'E', 'D', '\020',
'\001', '\022', '\014', '\n', '\010', 'N', 'O', 'T', '_', 'S', 'E', 'N', 'T', '\020', '\002', '\022', '\t', '\n', '\005', 'S', 'T', 'A', 'L', 'E', '\020',
'\003', '\022', '\t', '\n', '\005', 'E', 'R', 'R', 'O', 'R', '\020', '\004', '*', 'c', '\n', '\022', 'C', 'l', 'i', 'e', 'n', 't', 'C', 'o', 'n',
'f', 'i', 'g', 'S', 't', 'a', 't', 'u', 's', '\022', '\022', '\n', '\016', 'C', 'L', 'I', 'E', 'N', 'T', '_', 'U', 'N', 'K', 'N', 'O',
'W', 'N', '\020', '\000', '\022', '\024', '\n', '\020', 'C', 'L', 'I', 'E', 'N', 'T', '_', 'R', 'E', 'Q', 'U', 'E', 'S', 'T', 'E', 'D', '\020',
'\001', '\022', '\020', '\n', '\014', 'C', 'L', 'I', 'E', 'N', 'T', '_', 'A', 'C', 'K', 'E', 'D', '\020', '\002', '\022', '\021', '\n', '\r', 'C', 'L',
'I', 'E', 'N', 'T', '_', 'N', 'A', 'C', 'K', 'E', 'D', '\020', '\003', '2', '\270', '\002', '\n', '\034', 'C', 'l', 'i', 'e', 'n', 't', 'S',
't', 'a', 't', 'u', 's', 'D', 'i', 's', 'c', 'o', 'v', 'e', 'r', 'y', 'S', 'e', 'r', 'v', 'i', 'c', 'e', '\022', 'w', '\n', '\022',
'S', 't', 'r', 'e', 'a', 'm', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', '\022', ',', '.', 'e', 'n', 'v', 'o',
'y', '.', 's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n',
't', 'S', 't', 'a', 't', 'u', 's', 'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '-', '.', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e',
'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a',
't', 'u', 's', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\"', '\000', '(', '\001', '0', '\001', '\022', '\236', '\001', '\n', '\021', 'F', 'e', 't',
'c', 'h', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', '\022', ',', '.', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e',
'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a',
't', 'u', 's', 'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '-', '.', 'e', 'n', 'v', 'o', 'y', '.', 's', 'e', 'r', 'v', 'i', 'c',
'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 'u', 's', 'R',
'e', 's', 'p', 'o', 'n', 's', 'e', '\"', ',', '\202', '\323', '\344', '\223', '\002', '\035', '\"', '\033', '/', 'v', '3', '/', 'd', 'i', 's', 'c',
'o', 'v', 'e', 'r', 'y', ':', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a', 't', 'u', 's', '\202', '\323', '\344', '\223', '\002', '\003',
':', '\001', '*', 'B', '?', '\n', '%', 'i', 'o', '.', 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o',
'y', '.', 's', 'e', 'r', 'v', 'i', 'c', 'e', '.', 's', 't', 'a', 't', 'u', 's', '.', 'v', '3', 'B', '\t', 'C', 's', 'd', 's',
'P', 'r', 'o', 't', 'o', 'P', '\001', '\210', '\001', '\001', '\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o',
'3',
};
static upb_def_init *deps[8] = {
&envoy_admin_v3_config_dump_proto_upbdefinit,
&envoy_config_core_v3_base_proto_upbdefinit,
&envoy_type_matcher_v3_node_proto_upbdefinit,
&google_api_annotations_proto_upbdefinit,
&udpa_annotations_migrate_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
NULL
};
upb_def_init envoy_service_status_v3_csds_proto_upbdefinit = {
deps,
layouts,
"envoy/service/status/v3/csds.proto",
UPB_STRVIEW_INIT(descriptor, 2001)
};

@ -0,0 +1,50 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/service/status/v3/csds.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_SERVICE_STATUS_V3_CSDS_PROTO_UPBDEFS_H_
#define ENVOY_SERVICE_STATUS_V3_CSDS_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_service_status_v3_csds_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_service_status_v3_ClientStatusRequest_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_service_status_v3_csds_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.service.status.v3.ClientStatusRequest");
}
UPB_INLINE const upb_msgdef *envoy_service_status_v3_PerXdsConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_service_status_v3_csds_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.service.status.v3.PerXdsConfig");
}
UPB_INLINE const upb_msgdef *envoy_service_status_v3_ClientConfig_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_service_status_v3_csds_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.service.status.v3.ClientConfig");
}
UPB_INLINE const upb_msgdef *envoy_service_status_v3_ClientStatusResponse_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_service_status_v3_csds_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.service.status.v3.ClientStatusResponse");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_SERVICE_STATUS_V3_CSDS_PROTO_UPBDEFS_H_ */

@ -0,0 +1,56 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/node.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/type/matcher/v3/node.upbdefs.h"
extern upb_def_init envoy_type_matcher_v3_string_proto_upbdefinit;
extern upb_def_init envoy_type_matcher_v3_struct_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern const upb_msglayout envoy_type_matcher_v3_NodeMatcher_msginit;
static const upb_msglayout *layouts[1] = {
&envoy_type_matcher_v3_NodeMatcher_msginit,
};
static const char descriptor[458] = {'\n', ' ', 'e', 'n', 'v', 'o', 'y', '/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't', 'c', 'h', 'e', 'r', '/', 'v', '3', '/', 'n',
'o', 'd', 'e', '.', 'p', 'r', 'o', 't', 'o', '\022', '\025', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't',
'c', 'h', 'e', 'r', '.', 'v', '3', '\032', '\"', 'e', 'n', 'v', 'o', 'y', '/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't', 'c', 'h',
'e', 'r', '/', 'v', '3', '/', 's', 't', 'r', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\"', 'e', 'n', 'v', 'o', 'y',
'/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't', 'c', 'h', 'e', 'r', '/', 'v', '3', '/', 's', 't', 'r', 'u', 'c', 't', '.', 'p',
'r', 'o', 't', 'o', '\032', '\035', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't',
'a', 't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i',
'o', 'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o', 'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\"', '\300', '\001', '\n', '\013',
'N', 'o', 'd', 'e', 'M', 'a', 't', 'c', 'h', 'e', 'r', '\022', '=', '\n', '\007', 'n', 'o', 'd', 'e', '_', 'i', 'd', '\030', '\001', ' ',
'\001', '(', '\013', '2', '$', '.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.',
'v', '3', '.', 'S', 't', 'r', 'i', 'n', 'g', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'R', '\006', 'n', 'o', 'd', 'e', 'I', 'd', '\022',
'K', '\n', '\016', 'n', 'o', 'd', 'e', '_', 'm', 'e', 't', 'a', 'd', 'a', 't', 'a', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', '$',
'.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'S', 't',
'r', 'u', 'c', 't', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'R', '\r', 'n', 'o', 'd', 'e', 'M', 'e', 't', 'a', 'd', 'a', 't', 'a',
's', ':', '%', '\232', '\305', '\210', '\036', ' ', '\n', '\036', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c',
'h', 'e', 'r', '.', 'N', 'o', 'd', 'e', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'B', ':', '\n', '#', 'i', 'o', '.', 'e', 'n', 'v',
'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e',
'r', '.', 'v', '3', 'B', '\t', 'N', 'o', 'd', 'e', 'P', 'r', 'o', 't', 'o', 'P', '\001', '\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002',
'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[5] = {
&envoy_type_matcher_v3_string_proto_upbdefinit,
&envoy_type_matcher_v3_struct_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
NULL
};
upb_def_init envoy_type_matcher_v3_node_proto_upbdefinit = {
deps,
layouts,
"envoy/type/matcher/v3/node.proto",
UPB_STRVIEW_INIT(descriptor, 458)
};

@ -0,0 +1,35 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/node.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_TYPE_MATCHER_V3_NODE_PROTO_UPBDEFS_H_
#define ENVOY_TYPE_MATCHER_V3_NODE_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_type_matcher_v3_node_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_type_matcher_v3_NodeMatcher_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_type_matcher_v3_node_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.type.matcher.v3.NodeMatcher");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_TYPE_MATCHER_V3_NODE_PROTO_UPBDEFS_H_ */

@ -0,0 +1,63 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/struct.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "envoy/type/matcher/v3/struct.upbdefs.h"
extern upb_def_init envoy_type_matcher_v3_value_proto_upbdefinit;
extern upb_def_init udpa_annotations_status_proto_upbdefinit;
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit;
extern upb_def_init validate_validate_proto_upbdefinit;
extern const upb_msglayout envoy_type_matcher_v3_StructMatcher_msginit;
extern const upb_msglayout envoy_type_matcher_v3_StructMatcher_PathSegment_msginit;
static const upb_msglayout *layouts[2] = {
&envoy_type_matcher_v3_StructMatcher_msginit,
&envoy_type_matcher_v3_StructMatcher_PathSegment_msginit,
};
static const char descriptor[576] = {'\n', '\"', 'e', 'n', 'v', 'o', 'y', '/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't', 'c', 'h', 'e', 'r', '/', 'v', '3', '/', 's',
't', 'r', 'u', 'c', 't', '.', 'p', 'r', 'o', 't', 'o', '\022', '\025', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm',
'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '\032', '!', 'e', 'n', 'v', 'o', 'y', '/', 't', 'y', 'p', 'e', '/', 'm', 'a', 't',
'c', 'h', 'e', 'r', '/', 'v', '3', '/', 'v', 'a', 'l', 'u', 'e', '.', 'p', 'r', 'o', 't', 'o', '\032', '\035', 'u', 'd', 'p', 'a',
'/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a', 't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o',
'\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o',
'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\027', 'v', 'a', 'l', 'i', 'd', 'a', 't', 'e', '/', 'v', 'a', 'l', 'i',
'd', 'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\"', '\276', '\002', '\n', '\r', 'S', 't', 'r', 'u', 'c', 't', 'M', 'a', 't', 'c',
'h', 'e', 'r', '\022', 'N', '\n', '\004', 'p', 'a', 't', 'h', '\030', '\002', ' ', '\003', '(', '\013', '2', '0', '.', 'e', 'n', 'v', 'o', 'y',
'.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'S', 't', 'r', 'u', 'c', 't', 'M', 'a',
't', 'c', 'h', 'e', 'r', '.', 'P', 'a', 't', 'h', 'S', 'e', 'g', 'm', 'e', 'n', 't', 'B', '\010', '\372', 'B', '\005', '\222', '\001', '\002',
'\010', '\001', 'R', '\004', 'p', 'a', 't', 'h', '\022', 'C', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\003', ' ', '\001', '(', '\013', '2', '#',
'.', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', '.', 'V', 'a',
'l', 'u', 'e', 'M', 'a', 't', 'c', 'h', 'e', 'r', 'B', '\010', '\372', 'B', '\005', '\212', '\001', '\002', '\020', '\001', 'R', '\005', 'v', 'a', 'l',
'u', 'e', '\032', 'o', '\n', '\013', 'P', 'a', 't', 'h', 'S', 'e', 'g', 'm', 'e', 'n', 't', '\022', '\033', '\n', '\003', 'k', 'e', 'y', '\030',
'\001', ' ', '\001', '(', '\t', 'B', '\007', '\372', 'B', '\004', 'r', '\002', '\020', '\001', 'H', '\000', 'R', '\003', 'k', 'e', 'y', ':', '3', '\232', '\305',
'\210', '\036', '.', '\n', ',', 'e', 'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'S',
't', 'r', 'u', 'c', 't', 'M', 'a', 't', 'c', 'h', 'e', 'r', '.', 'P', 'a', 't', 'h', 'S', 'e', 'g', 'm', 'e', 'n', 't', 'B',
'\016', '\n', '\007', 's', 'e', 'g', 'm', 'e', 'n', 't', '\022', '\003', '\370', 'B', '\001', ':', '\'', '\232', '\305', '\210', '\036', '\"', '\n', ' ', 'e',
'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'S', 't', 'r', 'u', 'c', 't', 'M',
'a', 't', 'c', 'h', 'e', 'r', 'B', '<', '\n', '#', 'i', 'o', '.', 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e',
'n', 'v', 'o', 'y', '.', 't', 'y', 'p', 'e', '.', 'm', 'a', 't', 'c', 'h', 'e', 'r', '.', 'v', '3', 'B', '\013', 'S', 't', 'r',
'u', 'c', 't', 'P', 'r', 'o', 't', 'o', 'P', '\001', '\272', '\200', '\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o',
'3',
};
static upb_def_init *deps[5] = {
&envoy_type_matcher_v3_value_proto_upbdefinit,
&udpa_annotations_status_proto_upbdefinit,
&udpa_annotations_versioning_proto_upbdefinit,
&validate_validate_proto_upbdefinit,
NULL
};
upb_def_init envoy_type_matcher_v3_struct_proto_upbdefinit = {
deps,
layouts,
"envoy/type/matcher/v3/struct.proto",
UPB_STRVIEW_INIT(descriptor, 576)
};

@ -0,0 +1,40 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/type/matcher/v3/struct.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_TYPE_MATCHER_V3_STRUCT_PROTO_UPBDEFS_H_
#define ENVOY_TYPE_MATCHER_V3_STRUCT_PROTO_UPBDEFS_H_
#include "upb/def.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
#include "upb/def.h"
#include "upb/port_def.inc"
extern upb_def_init envoy_type_matcher_v3_struct_proto_upbdefinit;
UPB_INLINE const upb_msgdef *envoy_type_matcher_v3_StructMatcher_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_type_matcher_v3_struct_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.type.matcher.v3.StructMatcher");
}
UPB_INLINE const upb_msgdef *envoy_type_matcher_v3_StructMatcher_PathSegment_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &envoy_type_matcher_v3_struct_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "envoy.type.matcher.v3.StructMatcher.PathSegment");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_TYPE_MATCHER_V3_STRUCT_PROTO_UPBDEFS_H_ */

@ -28,11 +28,13 @@
#include "absl/strings/str_format.h" #include "absl/strings/str_format.h"
#include "absl/strings/str_join.h" #include "absl/strings/str_join.h"
#include "absl/strings/str_split.h" #include "absl/strings/str_split.h"
#include "envoy/admin/v3/config_dump.upb.h"
#include "envoy/config/cluster/v3/circuit_breaker.upb.h" #include "envoy/config/cluster/v3/circuit_breaker.upb.h"
#include "envoy/config/cluster/v3/cluster.upb.h" #include "envoy/config/cluster/v3/cluster.upb.h"
#include "envoy/config/cluster/v3/cluster.upbdefs.h" #include "envoy/config/cluster/v3/cluster.upbdefs.h"
#include "envoy/config/core/v3/address.upb.h" #include "envoy/config/core/v3/address.upb.h"
#include "envoy/config/core/v3/base.upb.h" #include "envoy/config/core/v3/base.upb.h"
#include "envoy/config/core/v3/base.upbdefs.h"
#include "envoy/config/core/v3/config_source.upb.h" #include "envoy/config/core/v3/config_source.upb.h"
#include "envoy/config/core/v3/health_check.upb.h" #include "envoy/config/core/v3/health_check.upb.h"
#include "envoy/config/core/v3/protocol.upb.h" #include "envoy/config/core/v3/protocol.upb.h"
@ -47,11 +49,14 @@
#include "envoy/config/route/v3/route.upb.h" #include "envoy/config/route/v3/route.upb.h"
#include "envoy/config/route/v3/route.upbdefs.h" #include "envoy/config/route/v3/route.upbdefs.h"
#include "envoy/config/route/v3/route_components.upb.h" #include "envoy/config/route/v3/route_components.upb.h"
#include "envoy/config/route/v3/route_components.upbdefs.h"
#include "envoy/extensions/clusters/aggregate/v3/cluster.upb.h" #include "envoy/extensions/clusters/aggregate/v3/cluster.upb.h"
#include "envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h"
#include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h" #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h"
#include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h" #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h"
#include "envoy/extensions/transport_sockets/tls/v3/common.upb.h" #include "envoy/extensions/transport_sockets/tls/v3/common.upb.h"
#include "envoy/extensions/transport_sockets/tls/v3/tls.upb.h" #include "envoy/extensions/transport_sockets/tls/v3/tls.upb.h"
#include "envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h"
#include "envoy/service/cluster/v3/cds.upb.h" #include "envoy/service/cluster/v3/cds.upb.h"
#include "envoy/service/cluster/v3/cds.upbdefs.h" #include "envoy/service/cluster/v3/cds.upbdefs.h"
#include "envoy/service/discovery/v3/discovery.upb.h" #include "envoy/service/discovery/v3/discovery.upb.h"
@ -63,6 +68,8 @@
#include "envoy/service/load_stats/v3/lrs.upbdefs.h" #include "envoy/service/load_stats/v3/lrs.upbdefs.h"
#include "envoy/service/route/v3/rds.upb.h" #include "envoy/service/route/v3/rds.upb.h"
#include "envoy/service/route/v3/rds.upbdefs.h" #include "envoy/service/route/v3/rds.upbdefs.h"
#include "envoy/service/status/v3/csds.upb.h"
#include "envoy/service/status/v3/csds.upbdefs.h"
#include "envoy/type/matcher/v3/regex.upb.h" #include "envoy/type/matcher/v3/regex.upb.h"
#include "envoy/type/matcher/v3/string.upb.h" #include "envoy/type/matcher/v3/string.upb.h"
#include "envoy/type/v3/percent.upb.h" #include "envoy/type/v3/percent.upb.h"
@ -70,6 +77,7 @@
#include "google/protobuf/any.upb.h" #include "google/protobuf/any.upb.h"
#include "google/protobuf/duration.upb.h" #include "google/protobuf/duration.upb.h"
#include "google/protobuf/struct.upb.h" #include "google/protobuf/struct.upb.h"
#include "google/protobuf/timestamp.upb.h"
#include "google/protobuf/wrappers.upb.h" #include "google/protobuf/wrappers.upb.h"
#include "google/rpc/status.upb.h" #include "google/rpc/status.upb.h"
#include "udpa/type/v1/typed_struct.upb.h" #include "udpa/type/v1/typed_struct.upb.h"
@ -726,7 +734,11 @@ XdsApi::XdsApi(XdsClient* client, TraceFlag* tracer,
envoy_config_listener_v3_Listener_getmsgdef(symtab_.ptr()); envoy_config_listener_v3_Listener_getmsgdef(symtab_.ptr());
envoy_config_route_v3_RouteConfiguration_getmsgdef(symtab_.ptr()); envoy_config_route_v3_RouteConfiguration_getmsgdef(symtab_.ptr());
envoy_config_cluster_v3_Cluster_getmsgdef(symtab_.ptr()); envoy_config_cluster_v3_Cluster_getmsgdef(symtab_.ptr());
envoy_extensions_clusters_aggregate_v3_ClusterConfig_getmsgdef(symtab_.ptr());
envoy_config_cluster_v3_Cluster_getmsgdef(symtab_.ptr());
envoy_config_endpoint_v3_ClusterLoadAssignment_getmsgdef(symtab_.ptr()); envoy_config_endpoint_v3_ClusterLoadAssignment_getmsgdef(symtab_.ptr());
envoy_extensions_transport_sockets_tls_v3_UpstreamTlsContext_getmsgdef(
symtab_.ptr());
envoy_extensions_filters_network_http_connection_manager_v3_HttpConnectionManager_getmsgdef( envoy_extensions_filters_network_http_connection_manager_v3_HttpConnectionManager_getmsgdef(
symtab_.ptr()); symtab_.ptr());
// Load HTTP filter proto messages into the upb symtab. // Load HTTP filter proto messages into the upb symtab.
@ -1514,6 +1526,9 @@ grpc_error* RouteConfigParse(
for (size_t j = 0; j < num_routes; ++j) { for (size_t j = 0; j < num_routes; ++j) {
const envoy_config_route_v3_RouteMatch* match = const envoy_config_route_v3_RouteMatch* match =
envoy_config_route_v3_Route_match(routes[j]); envoy_config_route_v3_Route_match(routes[j]);
if (match == nullptr) {
return GRPC_ERROR_CREATE_FROM_STATIC_STRING("Match can't be null.");
}
size_t query_parameters_size; size_t query_parameters_size;
static_cast<void>(envoy_config_route_v3_RouteMatch_query_parameters( static_cast<void>(envoy_config_route_v3_RouteMatch_query_parameters(
match, &query_parameters_size)); match, &query_parameters_size));
@ -2128,7 +2143,11 @@ grpc_error* LdsResponseParse(
resource_names_failed->insert(listener_name); resource_names_failed->insert(listener_name);
continue; continue;
} }
XdsApi::LdsUpdate& lds_update = (*lds_update_map)[listener_name]; // Serialize into JSON and store it in the LdsUpdateMap
XdsApi::LdsResourceData& lds_resource_data =
(*lds_update_map)[listener_name];
XdsApi::LdsUpdate& lds_update = lds_resource_data.resource;
lds_resource_data.serialized_proto = UpbStringToStdString(encoded_listener);
// Check whether it's a client or server listener. // Check whether it's a client or server listener.
const envoy_config_listener_v3_ApiListener* api_listener = const envoy_config_listener_v3_ApiListener* api_listener =
envoy_config_listener_v3_Listener_api_listener(listener); envoy_config_listener_v3_Listener_api_listener(listener);
@ -2217,8 +2236,13 @@ grpc_error* RdsResponseParse(
resource_names_failed->insert(route_config_name); resource_names_failed->insert(route_config_name);
continue; continue;
} }
// Serialize into JSON and store it in the RdsUpdateMap
XdsApi::RdsResourceData& rds_resource_data =
(*rds_update_map)[route_config_name];
XdsApi::RdsUpdate& rds_update = rds_resource_data.resource;
rds_resource_data.serialized_proto =
UpbStringToStdString(encoded_route_config);
// Parse the route_config. // Parse the route_config.
XdsApi::RdsUpdate& rds_update = (*rds_update_map)[route_config_name];
grpc_error* error = RouteConfigParse(context, route_config, &rds_update); grpc_error* error = RouteConfigParse(context, route_config, &rds_update);
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
errors.push_back(grpc_error_add_child( errors.push_back(grpc_error_add_child(
@ -2280,7 +2304,11 @@ grpc_error* CdsResponseParse(
resource_names_failed->insert(cluster_name); resource_names_failed->insert(cluster_name);
continue; continue;
} }
XdsApi::CdsUpdate& cds_update = (*cds_update_map)[cluster_name]; // Serialize into JSON and store it in the CdsUpdateMap
XdsApi::CdsResourceData& cds_resource_data =
(*cds_update_map)[cluster_name];
XdsApi::CdsUpdate& cds_update = cds_resource_data.resource;
cds_resource_data.serialized_proto = UpbStringToStdString(encoded_cluster);
// Check the cluster_discovery_type. // Check the cluster_discovery_type.
if (!envoy_config_cluster_v3_Cluster_has_type(cluster) && if (!envoy_config_cluster_v3_Cluster_has_type(cluster) &&
!envoy_config_cluster_v3_Cluster_has_cluster_type(cluster)) { !envoy_config_cluster_v3_Cluster_has_cluster_type(cluster)) {
@ -2608,6 +2636,9 @@ grpc_error* LocalityParse(
const envoy_config_core_v3_Locality* locality = const envoy_config_core_v3_Locality* locality =
envoy_config_endpoint_v3_LocalityLbEndpoints_locality( envoy_config_endpoint_v3_LocalityLbEndpoints_locality(
locality_lb_endpoints); locality_lb_endpoints);
if (locality == nullptr) {
return GRPC_ERROR_CREATE_FROM_STATIC_STRING("Empty locality.");
}
std::string region = std::string region =
UpbStringToStdString(envoy_config_core_v3_Locality_region(locality)); UpbStringToStdString(envoy_config_core_v3_Locality_region(locality));
std::string zone = std::string zone =
@ -2723,7 +2754,12 @@ grpc_error* EdsResponseParse(
resource_names_failed->insert(eds_service_name); resource_names_failed->insert(eds_service_name);
continue; continue;
} }
XdsApi::EdsUpdate& eds_update = (*eds_update_map)[eds_service_name]; // Serialize into JSON and store it in the EdsUpdateMap
XdsApi::EdsResourceData& eds_resource_data =
(*eds_update_map)[eds_service_name];
XdsApi::EdsUpdate& eds_update = eds_resource_data.resource;
eds_resource_data.serialized_proto =
UpbStringToStdString(encoded_cluster_load_assignment);
// Get the endpoints. // Get the endpoints.
size_t locality_size; size_t locality_size;
const envoy_config_endpoint_v3_LocalityLbEndpoints* const* endpoints = const envoy_config_endpoint_v3_LocalityLbEndpoints* const* endpoints =
@ -3083,4 +3119,276 @@ grpc_error* XdsApi::ParseLrsResponse(const grpc_slice& encoded_response,
return GRPC_ERROR_NONE; return GRPC_ERROR_NONE;
} }
namespace {
google_protobuf_Timestamp* GrpcMillisToTimestamp(const EncodingContext& context,
grpc_millis value) {
google_protobuf_Timestamp* timestamp =
google_protobuf_Timestamp_new(context.arena);
gpr_timespec timespec = grpc_millis_to_timespec(value, GPR_CLOCK_MONOTONIC);
google_protobuf_Timestamp_set_seconds(timestamp, timespec.tv_sec);
google_protobuf_Timestamp_set_nanos(timestamp, timespec.tv_nsec);
return timestamp;
}
envoy_admin_v3_UpdateFailureState* CreateUpdateFailureStateUpb(
const EncodingContext& context,
const XdsApi::ResourceMetadata* resource_metadata) {
auto* update_failure_state =
envoy_admin_v3_UpdateFailureState_new(context.arena);
envoy_admin_v3_UpdateFailureState_set_details(
update_failure_state,
StdStringToUpbString(resource_metadata->failed_details));
envoy_admin_v3_UpdateFailureState_set_version_info(
update_failure_state,
StdStringToUpbString(resource_metadata->failed_version));
envoy_admin_v3_UpdateFailureState_set_last_update_attempt(
update_failure_state,
GrpcMillisToTimestamp(context, resource_metadata->failed_update_time));
return update_failure_state;
}
void DumpLdsConfig(const EncodingContext& context,
const XdsApi::ResourceTypeMetadata& resource_type_metadata,
envoy_service_status_v3_PerXdsConfig* per_xds_config) {
upb_strview kLdsTypeUrlUpb = upb_strview_makez(XdsApi::kLdsTypeUrl);
auto* listener_config_dump =
envoy_service_status_v3_PerXdsConfig_mutable_listener_config(
per_xds_config, context.arena);
envoy_admin_v3_ListenersConfigDump_set_version_info(
listener_config_dump,
StdStringToUpbString(resource_type_metadata.version));
for (auto& p : resource_type_metadata.resource_metadata_map) {
absl::string_view name = p.first;
const XdsApi::ResourceMetadata* meta = p.second;
const upb_strview name_upb = StdStringToUpbString(name);
auto* dynamic_listener =
envoy_admin_v3_ListenersConfigDump_add_dynamic_listeners(
listener_config_dump, context.arena);
envoy_admin_v3_ListenersConfigDump_DynamicListener_set_name(
dynamic_listener, name_upb);
envoy_admin_v3_ListenersConfigDump_DynamicListener_set_client_status(
dynamic_listener, meta->client_status);
if (!meta->serialized_proto.empty()) {
// Set in-effective listeners
auto* dynamic_listener_state =
envoy_admin_v3_ListenersConfigDump_DynamicListener_mutable_active_state(
dynamic_listener, context.arena);
envoy_admin_v3_ListenersConfigDump_DynamicListenerState_set_version_info(
dynamic_listener_state, StdStringToUpbString(meta->version));
envoy_admin_v3_ListenersConfigDump_DynamicListenerState_set_last_updated(
dynamic_listener_state,
GrpcMillisToTimestamp(context, meta->update_time));
auto* listener_any =
envoy_admin_v3_ListenersConfigDump_DynamicListenerState_mutable_listener(
dynamic_listener_state, context.arena);
google_protobuf_Any_set_type_url(listener_any, kLdsTypeUrlUpb);
google_protobuf_Any_set_value(
listener_any, StdStringToUpbString(meta->serialized_proto));
}
if (meta->client_status == XdsApi::ResourceMetadata::NACKED) {
// Set error_state if NACKED
envoy_admin_v3_ListenersConfigDump_DynamicListener_set_error_state(
dynamic_listener, CreateUpdateFailureStateUpb(context, meta));
}
}
}
void DumpRdsConfig(const EncodingContext& context,
const XdsApi::ResourceTypeMetadata& resource_type_metadata,
envoy_service_status_v3_PerXdsConfig* per_xds_config) {
upb_strview kRdsTypeUrlUpb = upb_strview_makez(XdsApi::kRdsTypeUrl);
auto* route_config_dump =
envoy_service_status_v3_PerXdsConfig_mutable_route_config(per_xds_config,
context.arena);
for (auto& p : resource_type_metadata.resource_metadata_map) {
absl::string_view name = p.first;
const XdsApi::ResourceMetadata* meta = p.second;
const upb_strview name_upb = StdStringToUpbString(name);
auto* dynamic_route_config =
envoy_admin_v3_RoutesConfigDump_add_dynamic_route_configs(
route_config_dump, context.arena);
envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_set_client_status(
dynamic_route_config, meta->client_status);
auto* route_config_any =
envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_mutable_route_config(
dynamic_route_config, context.arena);
if (!meta->serialized_proto.empty()) {
// Set in-effective route configs
envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_set_version_info(
dynamic_route_config, StdStringToUpbString(meta->version));
envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_set_last_updated(
dynamic_route_config,
GrpcMillisToTimestamp(context, meta->update_time));
google_protobuf_Any_set_type_url(route_config_any, kRdsTypeUrlUpb);
google_protobuf_Any_set_value(
route_config_any, StdStringToUpbString(meta->serialized_proto));
} else {
// If there isn't a working route config, we still need to print the
// name.
auto* route_config =
envoy_config_route_v3_RouteConfiguration_new(context.arena);
envoy_config_route_v3_RouteConfiguration_set_name(route_config, name_upb);
size_t length;
char* bytes = envoy_config_route_v3_RouteConfiguration_serialize(
route_config, context.arena, &length);
google_protobuf_Any_set_type_url(route_config_any, kRdsTypeUrlUpb);
google_protobuf_Any_set_value(route_config_any,
upb_strview_make(bytes, length));
}
if (meta->client_status == XdsApi::ResourceMetadata::NACKED) {
// Set error_state if NACKED
envoy_admin_v3_RoutesConfigDump_DynamicRouteConfig_set_error_state(
dynamic_route_config, CreateUpdateFailureStateUpb(context, meta));
}
}
}
void DumpCdsConfig(const EncodingContext& context,
const XdsApi::ResourceTypeMetadata& resource_type_metadata,
envoy_service_status_v3_PerXdsConfig* per_xds_config) {
upb_strview kCdsTypeUrlUpb = upb_strview_makez(XdsApi::kCdsTypeUrl);
auto* cluster_config_dump =
envoy_service_status_v3_PerXdsConfig_mutable_cluster_config(
per_xds_config, context.arena);
envoy_admin_v3_ClustersConfigDump_set_version_info(
cluster_config_dump,
StdStringToUpbString(resource_type_metadata.version));
for (auto& p : resource_type_metadata.resource_metadata_map) {
absl::string_view name = p.first;
const XdsApi::ResourceMetadata* meta = p.second;
const upb_strview name_upb = StdStringToUpbString(name);
auto* dynamic_cluster =
envoy_admin_v3_ClustersConfigDump_add_dynamic_active_clusters(
cluster_config_dump, context.arena);
envoy_admin_v3_ClustersConfigDump_DynamicCluster_set_client_status(
dynamic_cluster, meta->client_status);
auto* cluster_any =
envoy_admin_v3_ClustersConfigDump_DynamicCluster_mutable_cluster(
dynamic_cluster, context.arena);
if (!meta->serialized_proto.empty()) {
// Set in-effective clusters
envoy_admin_v3_ClustersConfigDump_DynamicCluster_set_version_info(
dynamic_cluster, StdStringToUpbString(meta->version));
envoy_admin_v3_ClustersConfigDump_DynamicCluster_set_last_updated(
dynamic_cluster, GrpcMillisToTimestamp(context, meta->update_time));
google_protobuf_Any_set_type_url(cluster_any, kCdsTypeUrlUpb);
google_protobuf_Any_set_value(
cluster_any, StdStringToUpbString(meta->serialized_proto));
} else {
// If there isn't a working cluster, we still need to print the name.
auto* cluster = envoy_config_cluster_v3_Cluster_new(context.arena);
envoy_config_cluster_v3_Cluster_set_name(cluster, name_upb);
size_t length;
char* bytes = envoy_config_cluster_v3_Cluster_serialize(
cluster, context.arena, &length);
google_protobuf_Any_set_type_url(cluster_any, kCdsTypeUrlUpb);
google_protobuf_Any_set_value(cluster_any,
upb_strview_make(bytes, length));
}
if (meta->client_status == XdsApi::ResourceMetadata::NACKED) {
// Set error_state if NACKED
envoy_admin_v3_ClustersConfigDump_DynamicCluster_set_error_state(
dynamic_cluster, CreateUpdateFailureStateUpb(context, meta));
}
}
}
void DumpEdsConfig(const EncodingContext& context,
const XdsApi::ResourceTypeMetadata& resource_type_metadata,
envoy_service_status_v3_PerXdsConfig* per_xds_config) {
upb_strview kEdsTypeUrlUpb = upb_strview_makez(XdsApi::kEdsTypeUrl);
auto* endpoint_config_dump =
envoy_service_status_v3_PerXdsConfig_mutable_endpoint_config(
per_xds_config, context.arena);
for (auto& p : resource_type_metadata.resource_metadata_map) {
absl::string_view name = p.first;
const XdsApi::ResourceMetadata* meta = p.second;
const upb_strview name_upb = StdStringToUpbString(name);
auto* dynamic_endpoint =
envoy_admin_v3_EndpointsConfigDump_add_dynamic_endpoint_configs(
endpoint_config_dump, context.arena);
envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_set_client_status(
dynamic_endpoint, meta->client_status);
auto* endpoint_any =
envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_mutable_endpoint_config(
dynamic_endpoint, context.arena);
if (!meta->serialized_proto.empty()) {
// Set in-effective endpoints
envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_set_version_info(
dynamic_endpoint, StdStringToUpbString(meta->version));
envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_set_last_updated(
dynamic_endpoint, GrpcMillisToTimestamp(context, meta->update_time));
google_protobuf_Any_set_type_url(endpoint_any, kEdsTypeUrlUpb);
google_protobuf_Any_set_value(
endpoint_any, StdStringToUpbString(meta->serialized_proto));
} else {
// If there isn't a working endpoint, we still need to print the name.
auto* cluster_load_assignment =
envoy_config_endpoint_v3_ClusterLoadAssignment_new(context.arena);
envoy_config_endpoint_v3_ClusterLoadAssignment_set_cluster_name(
cluster_load_assignment, name_upb);
size_t length;
char* bytes = envoy_config_endpoint_v3_ClusterLoadAssignment_serialize(
cluster_load_assignment, context.arena, &length);
google_protobuf_Any_set_type_url(endpoint_any, kEdsTypeUrlUpb);
google_protobuf_Any_set_value(endpoint_any,
upb_strview_make(bytes, length));
}
if (meta->client_status == XdsApi::ResourceMetadata::NACKED) {
// Set error_state if NACKED
envoy_admin_v3_EndpointsConfigDump_DynamicEndpointConfig_set_error_state(
dynamic_endpoint, CreateUpdateFailureStateUpb(context, meta));
}
}
}
} // namespace
std::string XdsApi::AssembleClientConfig(
const ResourceTypeMetadataMap& resource_type_metadata_map) {
upb::Arena arena;
// Create the ClientConfig for resource metadata from XdsClient
auto* client_config = envoy_service_status_v3_ClientConfig_new(arena.ptr());
// Fill-in the node information
auto* node = envoy_service_status_v3_ClientConfig_mutable_node(client_config,
arena.ptr());
const EncodingContext context = {client_, tracer_, symtab_.ptr(), arena.ptr(),
true};
PopulateNode(context, node_, build_version_, user_agent_name_, node);
// Dump each xDS-type config into PerXdsConfig
for (auto& p : resource_type_metadata_map) {
absl::string_view type_url = p.first;
const ResourceTypeMetadata& resource_type_metadata = p.second;
if (type_url == kLdsTypeUrl) {
auto* per_xds_config =
envoy_service_status_v3_ClientConfig_add_xds_config(client_config,
context.arena);
DumpLdsConfig(context, resource_type_metadata, per_xds_config);
} else if (type_url == kRdsTypeUrl) {
auto* per_xds_config =
envoy_service_status_v3_ClientConfig_add_xds_config(client_config,
context.arena);
DumpRdsConfig(context, resource_type_metadata, per_xds_config);
} else if (type_url == kCdsTypeUrl) {
auto* per_xds_config =
envoy_service_status_v3_ClientConfig_add_xds_config(client_config,
context.arena);
DumpCdsConfig(context, resource_type_metadata, per_xds_config);
} else if (type_url == kEdsTypeUrl) {
auto* per_xds_config =
envoy_service_status_v3_ClientConfig_add_xds_config(client_config,
context.arena);
DumpEdsConfig(context, resource_type_metadata, per_xds_config);
} else {
gpr_log(GPR_ERROR, "invalid type_url %s", std::string(type_url).c_str());
return "";
}
}
// Serialize the upb message to bytes
size_t output_length;
char* output = envoy_service_status_v3_ClientConfig_serialize(
client_config, arena.ptr(), &output_length);
return std::string(output, output_length);
}
} // namespace grpc_core } // namespace grpc_core

@ -33,6 +33,7 @@
#include <grpc/slice_buffer.h> #include <grpc/slice_buffer.h>
#include "envoy/admin/v3/config_dump.upb.h"
#include "src/core/ext/filters/client_channel/server_address.h" #include "src/core/ext/filters/client_channel/server_address.h"
#include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/ext/xds/xds_bootstrap.h"
#include "src/core/ext/xds/xds_client_stats.h" #include "src/core/ext/xds/xds_client_stats.h"
@ -329,9 +330,20 @@ class XdsApi {
std::string ToString() const; std::string ToString() const;
}; };
using LdsUpdateMap = std::map<std::string /*server_name*/, LdsUpdate>; struct LdsResourceData {
LdsUpdate resource;
std::string serialized_proto;
};
using LdsUpdateMap = std::map<std::string /*server_name*/, LdsResourceData>;
using RdsUpdateMap = std::map<std::string /*route_config_name*/, RdsUpdate>; struct RdsResourceData {
RdsUpdate resource;
std::string serialized_proto;
};
using RdsUpdateMap =
std::map<std::string /*route_config_name*/, RdsResourceData>;
struct CdsUpdate { struct CdsUpdate {
enum ClusterType { EDS, LOGICAL_DNS, AGGREGATE }; enum ClusterType { EDS, LOGICAL_DNS, AGGREGATE };
@ -374,7 +386,12 @@ class XdsApi {
std::string ToString() const; std::string ToString() const;
}; };
using CdsUpdateMap = std::map<std::string /*cluster_name*/, CdsUpdate>; struct CdsResourceData {
CdsUpdate resource;
std::string serialized_proto;
};
using CdsUpdateMap = std::map<std::string /*cluster_name*/, CdsResourceData>;
struct EdsUpdate { struct EdsUpdate {
struct Priority { struct Priority {
@ -458,7 +475,13 @@ class XdsApi {
std::string ToString() const; std::string ToString() const;
}; };
using EdsUpdateMap = std::map<std::string /*eds_service_name*/, EdsUpdate>; struct EdsResourceData {
EdsUpdate resource;
std::string serialized_proto;
};
using EdsUpdateMap =
std::map<std::string /*eds_service_name*/, EdsResourceData>;
struct ClusterLoadReport { struct ClusterLoadReport {
XdsClusterDropStats::Snapshot dropped_requests; XdsClusterDropStats::Snapshot dropped_requests;
@ -471,18 +494,66 @@ class XdsApi {
std::pair<std::string /*cluster_name*/, std::string /*eds_service_name*/>, std::pair<std::string /*cluster_name*/, std::string /*eds_service_name*/>,
ClusterLoadReport>; ClusterLoadReport>;
XdsApi(XdsClient* client, TraceFlag* tracer, const XdsBootstrap::Node* node); // The metadata of the xDS resource; used by the xDS config dump.
struct ResourceMetadata {
// Resource status from the view of a xDS client, which tells the
// synchronization status between the xDS client and the xDS server.
enum ClientResourceStatus {
// Client requested this resource but hasn't received any update from
// management server. The client will not fail requests, but will queue
// them
// until update arrives or the client times out waiting for the resource.
REQUESTED = 1,
// This resource has been requested by the client but has either not been
// delivered by the server or was previously delivered by the server and
// then subsequently removed from resources provided by the server.
DOES_NOT_EXIST,
// Client received this resource and replied with ACK.
ACKED,
// Client received this resource and replied with NACK.
NACKED
};
// Creates an ADS request. // The client status of this resource.
// Takes ownership of \a error. ClientResourceStatus client_status = REQUESTED;
grpc_slice CreateAdsRequest(const XdsBootstrap::XdsServer& server, // The serialized bytes of the last successfully updated raw xDS resource.
const std::string& type_url, std::string serialized_proto;
const std::set<absl::string_view>& resource_names, // The timestamp when the resource was last successfully updated.
const std::string& version, grpc_millis update_time = 0;
const std::string& nonce, grpc_error* error, // The last successfully updated version of the resource.
bool populate_node); std::string version;
// The rejected version string of the last failed update attempt.
std::string failed_version;
// Details about the last failed update attempt.
std::string failed_details;
// Timestamp of the last failed update attempt.
grpc_millis failed_update_time = 0;
};
using ResourceMetadataMap =
std::map<absl::string_view /*resource_name*/, const ResourceMetadata*>;
struct ResourceTypeMetadata {
absl::string_view version;
ResourceMetadataMap resource_metadata_map;
};
using ResourceTypeMetadataMap =
std::map<absl::string_view /*type_url*/, ResourceTypeMetadata>;
static_assert(static_cast<ResourceMetadata::ClientResourceStatus>(
envoy_admin_v3_REQUESTED) ==
ResourceMetadata::ClientResourceStatus::REQUESTED,
"");
static_assert(static_cast<ResourceMetadata::ClientResourceStatus>(
envoy_admin_v3_DOES_NOT_EXIST) ==
ResourceMetadata::ClientResourceStatus::DOES_NOT_EXIST,
"");
static_assert(static_cast<ResourceMetadata::ClientResourceStatus>(
envoy_admin_v3_ACKED) ==
ResourceMetadata::ClientResourceStatus::ACKED,
"");
static_assert(static_cast<ResourceMetadata::ClientResourceStatus>(
envoy_admin_v3_NACKED) ==
ResourceMetadata::ClientResourceStatus::NACKED,
"");
// Parses an ADS response.
// If the response can't be parsed at the top level, the resulting // If the response can't be parsed at the top level, the resulting
// type_url will be empty. // type_url will be empty.
// If there is any other type of validation error, the parse_error // If there is any other type of validation error, the parse_error
@ -501,6 +572,19 @@ class XdsApi {
EdsUpdateMap eds_update_map; EdsUpdateMap eds_update_map;
std::set<std::string> resource_names_failed; std::set<std::string> resource_names_failed;
}; };
XdsApi(XdsClient* client, TraceFlag* tracer, const XdsBootstrap::Node* node);
// Creates an ADS request.
// Takes ownership of \a error.
grpc_slice CreateAdsRequest(const XdsBootstrap::XdsServer& server,
const std::string& type_url,
const std::set<absl::string_view>& resource_names,
const std::string& version,
const std::string& nonce, grpc_error* error,
bool populate_node);
// Parses an ADS response.
AdsParseResult ParseAdsResponse( AdsParseResult ParseAdsResponse(
const XdsBootstrap::XdsServer& server, const grpc_slice& encoded_response, const XdsBootstrap::XdsServer& server, const grpc_slice& encoded_response,
const std::set<absl::string_view>& expected_listener_names, const std::set<absl::string_view>& expected_listener_names,
@ -522,6 +606,10 @@ class XdsApi {
std::set<std::string>* cluster_names, std::set<std::string>* cluster_names,
grpc_millis* load_reporting_interval); grpc_millis* load_reporting_interval);
// Assemble the client config proto message and return the serialized result.
std::string AssembleClientConfig(
const ResourceTypeMetadataMap& resource_type_metadata_map);
private: private:
XdsClient* client_; XdsClient* client_;
TraceFlag* tracer_; TraceFlag* tracer_;

@ -35,6 +35,7 @@
#include "src/core/ext/filters/client_channel/client_channel.h" #include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/ext/filters/client_channel/service_config.h" #include "src/core/ext/filters/client_channel/service_config.h"
#include "src/core/ext/xds/xds_api.h" #include "src/core/ext/xds/xds_api.h"
#include "src/core/ext/xds/xds_bootstrap.h"
#include "src/core/ext/xds/xds_channel_args.h" #include "src/core/ext/xds/xds_channel_args.h"
#include "src/core/ext/xds/xds_client.h" #include "src/core/ext/xds/xds_client.h"
#include "src/core/ext/xds/xds_client_stats.h" #include "src/core/ext/xds/xds_client_stats.h"
@ -195,28 +196,34 @@ class XdsClient::ChannelState::AdsCallState
"timeout obtaining resource {type=%s name=%s} from xds server", "timeout obtaining resource {type=%s name=%s} from xds server",
type_url_, name_) type_url_, name_)
.c_str()); .c_str());
watcher_error = grpc_error_set_int(
watcher_error, GRPC_ERROR_INT_GRPC_STATUS, GRPC_STATUS_UNAVAILABLE);
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
gpr_log(GPR_INFO, "[xds_client %p] %s", ads_calld_->xds_client(), gpr_log(GPR_INFO, "[xds_client %p] %s", ads_calld_->xds_client(),
grpc_error_string(watcher_error)); grpc_error_string(watcher_error));
} }
if (type_url_ == XdsApi::kLdsTypeUrl) { if (type_url_ == XdsApi::kLdsTypeUrl) {
ListenerState& state = ads_calld_->xds_client()->listener_map_[name_]; ListenerState& state = ads_calld_->xds_client()->listener_map_[name_];
state.meta.client_status = XdsApi::ResourceMetadata::DOES_NOT_EXIST;
for (const auto& p : state.watchers) { for (const auto& p : state.watchers) {
p.first->OnError(GRPC_ERROR_REF(watcher_error)); p.first->OnError(GRPC_ERROR_REF(watcher_error));
} }
} else if (type_url_ == XdsApi::kRdsTypeUrl) { } else if (type_url_ == XdsApi::kRdsTypeUrl) {
RouteConfigState& state = RouteConfigState& state =
ads_calld_->xds_client()->route_config_map_[name_]; ads_calld_->xds_client()->route_config_map_[name_];
state.meta.client_status = XdsApi::ResourceMetadata::DOES_NOT_EXIST;
for (const auto& p : state.watchers) { for (const auto& p : state.watchers) {
p.first->OnError(GRPC_ERROR_REF(watcher_error)); p.first->OnError(GRPC_ERROR_REF(watcher_error));
} }
} else if (type_url_ == XdsApi::kCdsTypeUrl) { } else if (type_url_ == XdsApi::kCdsTypeUrl) {
ClusterState& state = ads_calld_->xds_client()->cluster_map_[name_]; ClusterState& state = ads_calld_->xds_client()->cluster_map_[name_];
state.meta.client_status = XdsApi::ResourceMetadata::DOES_NOT_EXIST;
for (const auto& p : state.watchers) { for (const auto& p : state.watchers) {
p.first->OnError(GRPC_ERROR_REF(watcher_error)); p.first->OnError(GRPC_ERROR_REF(watcher_error));
} }
} else if (type_url_ == XdsApi::kEdsTypeUrl) { } else if (type_url_ == XdsApi::kEdsTypeUrl) {
EndpointState& state = ads_calld_->xds_client()->endpoint_map_[name_]; EndpointState& state = ads_calld_->xds_client()->endpoint_map_[name_];
state.meta.client_status = XdsApi::ResourceMetadata::DOES_NOT_EXIST;
for (const auto& p : state.watchers) { for (const auto& p : state.watchers) {
p.first->OnError(GRPC_ERROR_REF(watcher_error)); p.first->OnError(GRPC_ERROR_REF(watcher_error));
} }
@ -252,10 +259,14 @@ class XdsClient::ChannelState::AdsCallState
void SendMessageLocked(const std::string& type_url); void SendMessageLocked(const std::string& type_url);
void AcceptLdsUpdate(XdsApi::LdsUpdateMap lds_update_map); void AcceptLdsUpdate(std::string version, grpc_millis update_time,
void AcceptRdsUpdate(XdsApi::RdsUpdateMap rds_update_map); XdsApi::LdsUpdateMap lds_update_map);
void AcceptCdsUpdate(XdsApi::CdsUpdateMap cds_update_map); void AcceptRdsUpdate(std::string version, grpc_millis update_time,
void AcceptEdsUpdate(XdsApi::EdsUpdateMap eds_update_map); XdsApi::RdsUpdateMap rds_update_map);
void AcceptCdsUpdate(std::string version, grpc_millis update_time,
XdsApi::CdsUpdateMap cds_update_map);
void AcceptEdsUpdate(std::string version, grpc_millis update_time,
XdsApi::EdsUpdateMap eds_update_map);
static void OnRequestSent(void* arg, grpc_error* error); static void OnRequestSent(void* arg, grpc_error* error);
void OnRequestSentLocked(grpc_error* error); void OnRequestSentLocked(grpc_error* error);
@ -504,7 +515,7 @@ XdsClient::ChannelState::LrsCallState* XdsClient::ChannelState::lrs_calld()
} }
bool XdsClient::ChannelState::HasActiveAdsCall() const { bool XdsClient::ChannelState::HasActiveAdsCall() const {
return ads_calld_->calld() != nullptr; return ads_calld_ != nullptr && ads_calld_->calld() != nullptr;
} }
void XdsClient::ChannelState::MaybeStartLrsCall() { void XdsClient::ChannelState::MaybeStartLrsCall() {
@ -867,7 +878,24 @@ bool XdsClient::ChannelState::AdsCallState::HasSubscribedResources() const {
return false; return false;
} }
namespace {
// Build a resource metadata struct for ADS result accepting methods and CSDS.
XdsApi::ResourceMetadata CreateResourceMetadataAcked(
std::string serialized_proto, std::string version,
grpc_millis update_time) {
XdsApi::ResourceMetadata resource_metadata;
resource_metadata.serialized_proto = std::move(serialized_proto);
resource_metadata.update_time = update_time;
resource_metadata.version = std::move(version);
resource_metadata.client_status = XdsApi::ResourceMetadata::ACKED;
return resource_metadata;
}
} // namespace
void XdsClient::ChannelState::AdsCallState::AcceptLdsUpdate( void XdsClient::ChannelState::AdsCallState::AcceptLdsUpdate(
std::string version, grpc_millis update_time,
XdsApi::LdsUpdateMap lds_update_map) { XdsApi::LdsUpdateMap lds_update_map) {
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
gpr_log(GPR_INFO, gpr_log(GPR_INFO,
@ -879,7 +907,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptLdsUpdate(
std::set<std::string> rds_resource_names_seen; std::set<std::string> rds_resource_names_seen;
for (auto& p : lds_update_map) { for (auto& p : lds_update_map) {
const std::string& listener_name = p.first; const std::string& listener_name = p.first;
XdsApi::LdsUpdate& lds_update = p.second; XdsApi::LdsUpdate& lds_update = p.second.resource;
auto& state = lds_state.subscribed_resources[listener_name]; auto& state = lds_state.subscribed_resources[listener_name];
if (state != nullptr) state->Finish(); if (state != nullptr) state->Finish();
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
@ -905,6 +933,8 @@ void XdsClient::ChannelState::AdsCallState::AcceptLdsUpdate(
} }
// Update the listener state. // Update the listener state.
listener_state.update = std::move(lds_update); listener_state.update = std::move(lds_update);
listener_state.meta = CreateResourceMetadataAcked(
std::move(p.second.serialized_proto), version, update_time);
// Notify watchers. // Notify watchers.
for (const auto& p : listener_state.watchers) { for (const auto& p : listener_state.watchers) {
p.first->OnListenerChanged(*listener_state.update); p.first->OnListenerChanged(*listener_state.update);
@ -949,6 +979,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptLdsUpdate(
} }
void XdsClient::ChannelState::AdsCallState::AcceptRdsUpdate( void XdsClient::ChannelState::AdsCallState::AcceptRdsUpdate(
std::string version, grpc_millis update_time,
XdsApi::RdsUpdateMap rds_update_map) { XdsApi::RdsUpdateMap rds_update_map) {
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
gpr_log(GPR_INFO, gpr_log(GPR_INFO,
@ -959,7 +990,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptRdsUpdate(
auto& rds_state = state_map_[XdsApi::kRdsTypeUrl]; auto& rds_state = state_map_[XdsApi::kRdsTypeUrl];
for (auto& p : rds_update_map) { for (auto& p : rds_update_map) {
const std::string& route_config_name = p.first; const std::string& route_config_name = p.first;
XdsApi::RdsUpdate& rds_update = p.second; XdsApi::RdsUpdate& rds_update = p.second.resource;
auto& state = rds_state.subscribed_resources[route_config_name]; auto& state = rds_state.subscribed_resources[route_config_name];
if (state != nullptr) state->Finish(); if (state != nullptr) state->Finish();
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
@ -980,6 +1011,8 @@ void XdsClient::ChannelState::AdsCallState::AcceptRdsUpdate(
} }
// Update the cache. // Update the cache.
route_config_state.update = std::move(rds_update); route_config_state.update = std::move(rds_update);
route_config_state.meta = CreateResourceMetadataAcked(
std::move(p.second.serialized_proto), version, update_time);
// Notify all watchers. // Notify all watchers.
for (const auto& p : route_config_state.watchers) { for (const auto& p : route_config_state.watchers) {
p.first->OnRouteConfigChanged(*route_config_state.update); p.first->OnRouteConfigChanged(*route_config_state.update);
@ -988,6 +1021,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptRdsUpdate(
} }
void XdsClient::ChannelState::AdsCallState::AcceptCdsUpdate( void XdsClient::ChannelState::AdsCallState::AcceptCdsUpdate(
std::string version, grpc_millis update_time,
XdsApi::CdsUpdateMap cds_update_map) { XdsApi::CdsUpdateMap cds_update_map) {
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
gpr_log(GPR_INFO, gpr_log(GPR_INFO,
@ -999,7 +1033,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptCdsUpdate(
std::set<std::string> eds_resource_names_seen; std::set<std::string> eds_resource_names_seen;
for (auto& p : cds_update_map) { for (auto& p : cds_update_map) {
const char* cluster_name = p.first.c_str(); const char* cluster_name = p.first.c_str();
XdsApi::CdsUpdate& cds_update = p.second; XdsApi::CdsUpdate& cds_update = p.second.resource;
auto& state = cds_state.subscribed_resources[cluster_name]; auto& state = cds_state.subscribed_resources[cluster_name];
if (state != nullptr) state->Finish(); if (state != nullptr) state->Finish();
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
@ -1023,6 +1057,8 @@ void XdsClient::ChannelState::AdsCallState::AcceptCdsUpdate(
} }
// Update the cluster state. // Update the cluster state.
cluster_state.update = std::move(cds_update); cluster_state.update = std::move(cds_update);
cluster_state.meta = CreateResourceMetadataAcked(
std::move(p.second.serialized_proto), version, update_time);
// Notify all watchers. // Notify all watchers.
for (const auto& p : cluster_state.watchers) { for (const auto& p : cluster_state.watchers) {
p.first->OnClusterChanged(cluster_state.update.value()); p.first->OnClusterChanged(cluster_state.update.value());
@ -1066,6 +1102,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptCdsUpdate(
} }
void XdsClient::ChannelState::AdsCallState::AcceptEdsUpdate( void XdsClient::ChannelState::AdsCallState::AcceptEdsUpdate(
std::string version, grpc_millis update_time,
XdsApi::EdsUpdateMap eds_update_map) { XdsApi::EdsUpdateMap eds_update_map) {
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
gpr_log(GPR_INFO, gpr_log(GPR_INFO,
@ -1076,7 +1113,7 @@ void XdsClient::ChannelState::AdsCallState::AcceptEdsUpdate(
auto& eds_state = state_map_[XdsApi::kEdsTypeUrl]; auto& eds_state = state_map_[XdsApi::kEdsTypeUrl];
for (auto& p : eds_update_map) { for (auto& p : eds_update_map) {
const char* eds_service_name = p.first.c_str(); const char* eds_service_name = p.first.c_str();
XdsApi::EdsUpdate& eds_update = p.second; XdsApi::EdsUpdate& eds_update = p.second.resource;
auto& state = eds_state.subscribed_resources[eds_service_name]; auto& state = eds_state.subscribed_resources[eds_service_name];
if (state != nullptr) state->Finish(); if (state != nullptr) state->Finish();
if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) { if (GRPC_TRACE_FLAG_ENABLED(grpc_xds_client_trace)) {
@ -1097,6 +1134,8 @@ void XdsClient::ChannelState::AdsCallState::AcceptEdsUpdate(
} }
// Update the cluster state. // Update the cluster state.
endpoint_state.update = std::move(eds_update); endpoint_state.update = std::move(eds_update);
endpoint_state.meta = CreateResourceMetadataAcked(
std::move(p.second.serialized_proto), version, update_time);
// Notify all watchers. // Notify all watchers.
for (const auto& p : endpoint_state.watchers) { for (const auto& p : endpoint_state.watchers) {
p.first->OnEndpointChanged(endpoint_state.update.value()); p.first->OnEndpointChanged(endpoint_state.update.value());
@ -1176,11 +1215,14 @@ bool XdsClient::ChannelState::AdsCallState::OnResponseReceivedLocked() {
xds_client(), grpc_error_string(result.parse_error)); xds_client(), grpc_error_string(result.parse_error));
GRPC_ERROR_UNREF(result.parse_error); GRPC_ERROR_UNREF(result.parse_error);
} else { } else {
grpc_millis update_time = grpc_core::ExecCtx::Get()->Now();
// Update nonce. // Update nonce.
auto& state = state_map_[result.type_url]; auto& state = state_map_[result.type_url];
state.nonce = std::move(result.nonce); state.nonce = std::move(result.nonce);
// NACK or ACK the response. // NACK or ACK the response.
if (result.parse_error != GRPC_ERROR_NONE) { if (result.parse_error != GRPC_ERROR_NONE) {
xds_client()->UpdateResourceMetadataWithFailedParseResult(update_time,
result);
GRPC_ERROR_UNREF(state.error); GRPC_ERROR_UNREF(state.error);
state.error = result.parse_error; state.error = result.parse_error;
// NACK unacceptable update. // NACK unacceptable update.
@ -1194,13 +1236,17 @@ bool XdsClient::ChannelState::AdsCallState::OnResponseReceivedLocked() {
seen_response_ = true; seen_response_ = true;
// Accept the ADS response according to the type_url. // Accept the ADS response according to the type_url.
if (result.type_url == XdsApi::kLdsTypeUrl) { if (result.type_url == XdsApi::kLdsTypeUrl) {
AcceptLdsUpdate(std::move(result.lds_update_map)); AcceptLdsUpdate(result.version, update_time,
std::move(result.lds_update_map));
} else if (result.type_url == XdsApi::kRdsTypeUrl) { } else if (result.type_url == XdsApi::kRdsTypeUrl) {
AcceptRdsUpdate(std::move(result.rds_update_map)); AcceptRdsUpdate(result.version, update_time,
std::move(result.rds_update_map));
} else if (result.type_url == XdsApi::kCdsTypeUrl) { } else if (result.type_url == XdsApi::kCdsTypeUrl) {
AcceptCdsUpdate(std::move(result.cds_update_map)); AcceptCdsUpdate(result.version, update_time,
std::move(result.cds_update_map));
} else if (result.type_url == XdsApi::kEdsTypeUrl) { } else if (result.type_url == XdsApi::kEdsTypeUrl) {
AcceptEdsUpdate(std::move(result.eds_update_map)); AcceptEdsUpdate(result.version, update_time,
std::move(result.eds_update_map));
} }
xds_client()->resource_version_map_[result.type_url] = xds_client()->resource_version_map_[result.type_url] =
std::move(result.version); std::move(result.version);
@ -2195,6 +2241,80 @@ XdsApi::ClusterLoadReportMap XdsClient::BuildLoadReportSnapshotLocked(
return snapshot_map; return snapshot_map;
} }
void XdsClient::UpdateResourceMetadataWithFailedParseResult(
grpc_millis update_time, const XdsApi::AdsParseResult& result) {
// ADS update is rejected and the resource names in the failed update is
// available.
absl::string_view details = grpc_error_string(result.parse_error);
for (auto& name : result.resource_names_failed) {
XdsApi::ResourceMetadata* resource_metadata = nullptr;
if (result.type_url == XdsApi::kLdsTypeUrl) {
auto it = listener_map_.find(name);
if (it != listener_map_.end()) {
resource_metadata = &it->second.meta;
}
} else if (result.type_url == XdsApi::kRdsTypeUrl) {
auto it = route_config_map_.find(name);
if (route_config_map_.find(name) != route_config_map_.end()) {
resource_metadata = &it->second.meta;
}
} else if (result.type_url == XdsApi::kCdsTypeUrl) {
auto it = cluster_map_.find(name);
if (cluster_map_.find(name) != cluster_map_.end()) {
resource_metadata = &it->second.meta;
}
} else if (result.type_url == XdsApi::kEdsTypeUrl) {
auto it = endpoint_map_.find(name);
if (endpoint_map_.find(name) != endpoint_map_.end()) {
resource_metadata = &it->second.meta;
}
}
if (resource_metadata == nullptr) {
return;
}
resource_metadata->client_status = XdsApi::ResourceMetadata::NACKED;
resource_metadata->failed_version = result.version;
resource_metadata->failed_details = std::string(details);
resource_metadata->failed_update_time = update_time;
}
}
std::string XdsClient::DumpClientConfigBinary() {
MutexLock lock(&mu_);
XdsApi::ResourceTypeMetadataMap resource_type_metadata_map;
// Update per-xds-type version if available, this version corresponding to the
// last successful ADS update version.
for (auto& p : resource_version_map_) {
resource_type_metadata_map[p.first].version = p.second;
}
// Collect resource metadata from listeners
auto& lds_map =
resource_type_metadata_map[XdsApi::kLdsTypeUrl].resource_metadata_map;
for (auto& p : listener_map_) {
lds_map[p.first] = &p.second.meta;
}
// Collect resource metadata from route configs
auto& rds_map =
resource_type_metadata_map[XdsApi::kRdsTypeUrl].resource_metadata_map;
for (auto& p : route_config_map_) {
rds_map[p.first] = &p.second.meta;
}
// Collect resource metadata from clusters
auto& cds_map =
resource_type_metadata_map[XdsApi::kCdsTypeUrl].resource_metadata_map;
for (auto& p : cluster_map_) {
cds_map[p.first] = &p.second.meta;
}
// Collect resource metadata from endpoints
auto& eds_map =
resource_type_metadata_map[XdsApi::kEdsTypeUrl].resource_metadata_map;
for (auto& p : endpoint_map_) {
eds_map[p.first] = &p.second.meta;
}
// Assemble config dump messages
return api_.AssembleClientConfig(resource_type_metadata_map);
}
// //
// accessors for global state // accessors for global state
// //
@ -2248,3 +2368,17 @@ void SetXdsFallbackBootstrapConfig(const char* config) {
} // namespace internal } // namespace internal
} // namespace grpc_core } // namespace grpc_core
// The returned bytes may contain NULL(0), so we can't use c-string.
grpc_slice grpc_dump_xds_configs() {
grpc_core::ApplicationCallbackExecCtx callback_exec_ctx;
grpc_core::ExecCtx exec_ctx;
grpc_error* error = GRPC_ERROR_NONE;
auto xds_client = grpc_core::XdsClient::GetOrCreate(&error);
if (error != GRPC_ERROR_NONE) {
// If we isn't using xDS, just return an empty string.
GRPC_ERROR_UNREF(error);
return grpc_empty_slice();
}
return grpc_slice_from_cpp_string(xds_client->DumpClientConfigBinary());
}

@ -191,6 +191,15 @@ class XdsClient : public DualRefCounted<XdsClient> {
// Resets connection backoff state. // Resets connection backoff state.
void ResetBackoff(); void ResetBackoff();
// Dumps the active xDS config in JSON format.
// Individual xDS resource is encoded as envoy.admin.v3.*ConfigDump. Returns
// envoy.service.status.v3.ClientConfig which also includes the config
// status (e.g., CLIENT_REQUESTED, CLIENT_ACKED, CLIENT_NACKED).
//
// Expected to be invoked by wrapper languages in their CSDS service
// implementation.
std::string DumpClientConfigBinary();
private: private:
// Contains a channel to the xds server and all the data related to the // Contains a channel to the xds server and all the data related to the
// channel. Holds a ref to the xds client object. // channel. Holds a ref to the xds client object.
@ -221,6 +230,7 @@ class XdsClient : public DualRefCounted<XdsClient> {
void MaybeStartLrsCall(); void MaybeStartLrsCall();
void StopLrsCall(); void StopLrsCall();
bool HasAdsCall() const;
bool HasActiveAdsCall() const; bool HasActiveAdsCall() const;
void StartConnectivityWatchLocked(); void StartConnectivityWatchLocked();
@ -254,6 +264,7 @@ class XdsClient : public DualRefCounted<XdsClient> {
watchers; watchers;
// The latest data seen from LDS. // The latest data seen from LDS.
absl::optional<XdsApi::LdsUpdate> update; absl::optional<XdsApi::LdsUpdate> update;
XdsApi::ResourceMetadata meta;
}; };
struct RouteConfigState { struct RouteConfigState {
@ -262,6 +273,7 @@ class XdsClient : public DualRefCounted<XdsClient> {
watchers; watchers;
// The latest data seen from RDS. // The latest data seen from RDS.
absl::optional<XdsApi::RdsUpdate> update; absl::optional<XdsApi::RdsUpdate> update;
XdsApi::ResourceMetadata meta;
}; };
struct ClusterState { struct ClusterState {
@ -269,6 +281,7 @@ class XdsClient : public DualRefCounted<XdsClient> {
watchers; watchers;
// The latest data seen from CDS. // The latest data seen from CDS.
absl::optional<XdsApi::CdsUpdate> update; absl::optional<XdsApi::CdsUpdate> update;
XdsApi::ResourceMetadata meta;
}; };
struct EndpointState { struct EndpointState {
@ -277,6 +290,7 @@ class XdsClient : public DualRefCounted<XdsClient> {
watchers; watchers;
// The latest data seen from EDS. // The latest data seen from EDS.
absl::optional<XdsApi::EdsUpdate> update; absl::optional<XdsApi::EdsUpdate> update;
XdsApi::ResourceMetadata meta;
}; };
struct LoadReportState { struct LoadReportState {
@ -299,6 +313,12 @@ class XdsClient : public DualRefCounted<XdsClient> {
XdsApi::ClusterLoadReportMap BuildLoadReportSnapshotLocked( XdsApi::ClusterLoadReportMap BuildLoadReportSnapshotLocked(
bool send_all_clusters, const std::set<std::string>& clusters); bool send_all_clusters, const std::set<std::string>& clusters);
void UpdateResourceMetadataWithFailedParseResult(
grpc_millis update_time, const XdsApi::AdsParseResult& result);
void UpdatePendingResources(
const std::string& type_url,
XdsApi::ResourceMetadataMap* resource_metadata_map);
const grpc_millis request_timeout_; const grpc_millis request_timeout_;
grpc_pollset_set* interested_parties_; grpc_pollset_set* interested_parties_;
std::unique_ptr<XdsBootstrap> bootstrap_; std::unique_ptr<XdsBootstrap> bootstrap_;

@ -0,0 +1,94 @@
//
//
// Copyright 2021 gRPC authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
//
#include <grpc/support/port_platform.h>
#include "src/cpp/server/csds/csds.h"
#include "absl/status/statusor.h"
#include <grpc/grpc.h>
#include <grpc/support/alloc.h>
#include <grpcpp/impl/codegen/slice.h>
#include <string>
#include "src/proto/grpc/testing/xds/v3/csds.grpc.pb.h"
namespace grpc {
namespace xds {
namespace experimental {
using envoy::service::status::v3::ClientConfig;
using envoy::service::status::v3::ClientStatusRequest;
using envoy::service::status::v3::ClientStatusResponse;
namespace {
absl::StatusOr<ClientConfig> DumpClientConfig() {
ClientConfig client_config;
grpc_slice serialized_client_config = grpc_dump_xds_configs();
std::string bytes = StringFromCopiedSlice(serialized_client_config);
grpc_slice_unref(serialized_client_config);
if (!client_config.ParseFromString(bytes)) {
return absl::InternalError("Failed to parse ClientConfig.");
}
return client_config;
}
} // namespace
Status ClientStatusDiscoveryService::StreamClientStatus(
ServerContext* /*context*/,
ServerReaderWriter<ClientStatusResponse, ClientStatusRequest>* stream) {
ClientStatusRequest request;
while (stream->Read(&request)) {
ClientStatusResponse response;
absl::StatusOr<ClientConfig> s = DumpClientConfig();
if (!s.ok()) {
if (s.status().code() == absl::StatusCode::kUnavailable) {
// If the xDS client is not initialized, return empty response
stream->Write(response);
continue;
}
return Status(StatusCode(s.status().raw_code()), s.status().ToString());
}
*response.add_config() = std::move(s.value());
stream->Write(response);
}
return Status::OK;
}
Status ClientStatusDiscoveryService::FetchClientStatus(
ServerContext* /*context*/, const ClientStatusRequest* /*request*/,
ClientStatusResponse* response) {
absl::StatusOr<ClientConfig> s = DumpClientConfig();
if (!s.ok()) {
if (s.status().code() == absl::StatusCode::kUnavailable) {
// If the xDS client is not initialized, return empty response
return Status::OK;
}
return Status(StatusCode(s.status().raw_code()), s.status().ToString());
}
*response->add_config() = std::move(s.value());
return Status::OK;
}
} // namespace experimental
} // namespace xds
} // namespace grpc

@ -0,0 +1,55 @@
//
//
// Copyright 2021 gRPC authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
//
#ifndef GRPC_INTERNAL_CPP_SERVER_CSDS_H
#define GRPC_INTERNAL_CPP_SERVER_CSDS_H
#include <grpc/support/port_platform.h>
#include <grpcpp/grpcpp.h>
#include "absl/status/status.h"
#include "src/proto/grpc/testing/xds/v3/csds.grpc.pb.h"
namespace grpc {
namespace xds {
namespace experimental {
// The implementation of
// envoy::service::status::v3::ClientStatusDiscoveryService
class ClientStatusDiscoveryService final
: public envoy::service::status::v3::ClientStatusDiscoveryService::Service {
public:
// A streaming call that responds client status for each request.
Status StreamClientStatus(
ServerContext* /*context*/,
ServerReaderWriter<envoy::service::status::v3::ClientStatusResponse,
envoy::service::status::v3::ClientStatusRequest>*
stream) override;
// An unary call to fetch client status.
Status FetchClientStatus(
ServerContext* /*unused*/,
const envoy::service::status::v3::ClientStatusRequest* /*request*/,
envoy::service::status::v3::ClientStatusResponse* response) override;
};
} // namespace experimental
} // namespace xds
} // namespace grpc
#endif // GRPC_INTERNAL_CPP_SERVER_CSDS_H

@ -245,6 +245,26 @@ grpc_proto_library(
], ],
) )
grpc_proto_library(
name = "config_dump_proto",
srcs = [
"config_dump.proto",
],
well_known_protos = True,
)
grpc_proto_library(
name = "csds_proto",
srcs = [
"csds.proto",
],
well_known_protos = True,
deps = [
"base_proto",
"config_dump_proto",
],
)
grpc_proto_library( grpc_proto_library(
name = "fault_proto", name = "fault_proto",
srcs = [ srcs = [

@ -0,0 +1,284 @@
// Copyright 2021 The gRPC Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Local copy of Envoy xDS proto file, used for testing only.
syntax = "proto3";
package envoy.admin.v3;
import "google/protobuf/any.proto";
import "google/protobuf/timestamp.proto";
// Resource status from the view of a xDS client, which tells the synchronization
// status between the xDS client and the xDS server.
enum ClientResourceStatus {
// Resource status is not available/unknown.
UNKNOWN = 0;
// Client requested this resource but hasn't received any update from management
// server. The client will not fail requests, but will queue them until update
// arrives or the client times out waiting for the resource.
REQUESTED = 1;
// This resource has been requested by the client but has either not been
// delivered by the server or was previously delivered by the server and then
// subsequently removed from resources provided by the server. For more
// information, please refer to the :ref:`"Knowing When a Requested Resource
// Does Not Exist" <xds_protocol_resource_not_existed>` section.
DOES_NOT_EXIST = 2;
// Client received this resource and replied with ACK.
ACKED = 3;
// Client received this resource and replied with NACK.
NACKED = 4;
}
message UpdateFailureState {
// What the component configuration would have been if the update had succeeded.
// This field may not be populated by xDS clients due to storage overhead.
google.protobuf.Any failed_configuration = 1;
// Time of the latest failed update attempt.
google.protobuf.Timestamp last_update_attempt = 2;
// Details about the last failed update attempt.
string details = 3;
// This is the version of the rejected resource.
// [#not-implemented-hide:]
string version_info = 4;
}
// Envoy's listener manager fills this message with all currently known listeners. Listener
// configuration information can be used to recreate an Envoy configuration by populating all
// listeners as static listeners or by returning them in a LDS response.
message ListenersConfigDump {
// Describes a statically loaded listener.
message StaticListener {
// The listener config.
google.protobuf.Any listener = 1;
// The timestamp when the Listener was last successfully updated.
google.protobuf.Timestamp last_updated = 2;
}
message DynamicListenerState {
// This is the per-resource version information. This version is currently taken from the
// :ref:`version_info <envoy_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time
// that the listener was loaded. In the future, discrete per-listener versions may be supported
// by the API.
string version_info = 1;
// The listener config.
google.protobuf.Any listener = 2;
// The timestamp when the Listener was last successfully updated.
google.protobuf.Timestamp last_updated = 3;
}
// Describes a dynamically loaded listener via the LDS API.
// [#next-free-field: 7]
message DynamicListener {
// The name or unique id of this listener, pulled from the DynamicListenerState config.
string name = 1;
// The listener state for any active listener by this name.
// These are listeners that are available to service data plane traffic.
DynamicListenerState active_state = 2;
// The listener state for any warming listener by this name.
// These are listeners that are currently undergoing warming in preparation to service data
// plane traffic. Note that if attempting to recreate an Envoy configuration from a
// configuration dump, the warming listeners should generally be discarded.
DynamicListenerState warming_state = 3;
// The listener state for any draining listener by this name.
// These are listeners that are currently undergoing draining in preparation to stop servicing
// data plane traffic. Note that if attempting to recreate an Envoy configuration from a
// configuration dump, the draining listeners should generally be discarded.
DynamicListenerState draining_state = 4;
// Set if the last update failed, cleared after the next successful update.
// The *error_state* field contains the rejected version of this particular
// resource along with the reason and timestamp. For successfully updated or
// acknowledged resource, this field should be empty.
UpdateFailureState error_state = 5;
// The client status of this resource.
// [#not-implemented-hide:]
ClientResourceStatus client_status = 6;
}
// This is the :ref:`version_info <envoy_api_field_service.discovery.v3.DiscoveryResponse.version_info>` in the
// last processed LDS discovery response. If there are only static bootstrap listeners, this field
// will be "".
string version_info = 1;
// The statically loaded listener configs.
repeated StaticListener static_listeners = 2;
// State for any warming, active, or draining listeners.
repeated DynamicListener dynamic_listeners = 3;
}
// Envoy's cluster manager fills this message with all currently known clusters. Cluster
// configuration information can be used to recreate an Envoy configuration by populating all
// clusters as static clusters or by returning them in a CDS response.
message ClustersConfigDump {
// Describes a statically loaded cluster.
message StaticCluster {
// The cluster config.
google.protobuf.Any cluster = 1;
// The timestamp when the Cluster was last updated.
google.protobuf.Timestamp last_updated = 2;
}
// Describes a dynamically loaded cluster via the CDS API.
// [#next-free-field: 6]
message DynamicCluster {
// This is the per-resource version information. This version is currently taken from the
// :ref:`version_info <envoy_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time
// that the cluster was loaded. In the future, discrete per-cluster versions may be supported by
// the API.
string version_info = 1;
// The cluster config.
google.protobuf.Any cluster = 2;
// The timestamp when the Cluster was last updated.
google.protobuf.Timestamp last_updated = 3;
// Set if the last update failed, cleared after the next successful update.
// The *error_state* field contains the rejected version of this particular
// resource along with the reason and timestamp. For successfully updated or
// acknowledged resource, this field should be empty.
// [#not-implemented-hide:]
UpdateFailureState error_state = 4;
// The client status of this resource.
// [#not-implemented-hide:]
ClientResourceStatus client_status = 5;
}
// This is the :ref:`version_info <envoy_api_field_service.discovery.v3.DiscoveryResponse.version_info>` in the
// last processed CDS discovery response. If there are only static bootstrap clusters, this field
// will be "".
string version_info = 1;
// The statically loaded cluster configs.
repeated StaticCluster static_clusters = 2;
// The dynamically loaded active clusters. These are clusters that are available to service
// data plane traffic.
repeated DynamicCluster dynamic_active_clusters = 3;
// The dynamically loaded warming clusters. These are clusters that are currently undergoing
// warming in preparation to service data plane traffic. Note that if attempting to recreate an
// Envoy configuration from a configuration dump, the warming clusters should generally be
// discarded.
repeated DynamicCluster dynamic_warming_clusters = 4;
}
// Envoy's RDS implementation fills this message with all currently loaded routes, as described by
// their RouteConfiguration objects. Static routes that are either defined in the bootstrap configuration
// or defined inline while configuring listeners are separated from those configured dynamically via RDS.
// Route configuration information can be used to recreate an Envoy configuration by populating all routes
// as static routes or by returning them in RDS responses.
message RoutesConfigDump {
message StaticRouteConfig {
// The route config.
google.protobuf.Any route_config = 1;
// The timestamp when the Route was last updated.
google.protobuf.Timestamp last_updated = 2;
}
// [#next-free-field: 6]
message DynamicRouteConfig {
// This is the per-resource version information. This version is currently taken from the
// :ref:`version_info <envoy_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that
// the route configuration was loaded.
string version_info = 1;
// The route config.
google.protobuf.Any route_config = 2;
// The timestamp when the Route was last updated.
google.protobuf.Timestamp last_updated = 3;
// Set if the last update failed, cleared after the next successful update.
// The *error_state* field contains the rejected version of this particular
// resource along with the reason and timestamp. For successfully updated or
// acknowledged resource, this field should be empty.
// [#not-implemented-hide:]
UpdateFailureState error_state = 4;
// The client status of this resource.
// [#not-implemented-hide:]
ClientResourceStatus client_status = 5;
}
// The statically loaded route configs.
repeated StaticRouteConfig static_route_configs = 2;
// The dynamically loaded route configs.
repeated DynamicRouteConfig dynamic_route_configs = 3;
}
// Envoy's admin fill this message with all currently known endpoints. Endpoint
// configuration information can be used to recreate an Envoy configuration by populating all
// endpoints as static endpoints or by returning them in an EDS response.
message EndpointsConfigDump {
message StaticEndpointConfig {
// The endpoint config.
google.protobuf.Any endpoint_config = 1;
// [#not-implemented-hide:] The timestamp when the Endpoint was last updated.
google.protobuf.Timestamp last_updated = 2;
}
// [#next-free-field: 6]
message DynamicEndpointConfig {
// [#not-implemented-hide:] This is the per-resource version information. This version is currently taken from the
// :ref:`version_info <envoy_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that
// the endpoint configuration was loaded.
string version_info = 1;
// The endpoint config.
google.protobuf.Any endpoint_config = 2;
// [#not-implemented-hide:] The timestamp when the Endpoint was last updated.
google.protobuf.Timestamp last_updated = 3;
// Set if the last update failed, cleared after the next successful update.
// The *error_state* field contains the rejected version of this particular
// resource along with the reason and timestamp. For successfully updated or
// acknowledged resource, this field should be empty.
// [#not-implemented-hide:]
UpdateFailureState error_state = 4;
// The client status of this resource.
// [#not-implemented-hide:]
ClientResourceStatus client_status = 5;
}
// The statically loaded endpoint configs.
repeated StaticEndpointConfig static_endpoint_configs = 2;
// The dynamically loaded endpoint configs.
repeated DynamicEndpointConfig dynamic_endpoint_configs = 3;
}

@ -0,0 +1,89 @@
// Copyright 2021 The gRPC Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Local copy of Envoy xDS proto file, used for testing only.
syntax = "proto3";
package envoy.service.status.v3;
import "src/proto/grpc/testing/xds/v3/config_dump.proto";
import "src/proto/grpc/testing/xds/v3/base.proto";
// CSDS is Client Status Discovery Service. It can be used to get the status of
// an xDS-compliant client from the management server's point of view. It can
// also be used to get the current xDS states directly from the client.
service ClientStatusDiscoveryService {
rpc StreamClientStatus(stream ClientStatusRequest) returns (stream ClientStatusResponse) {}
rpc FetchClientStatus(ClientStatusRequest) returns (ClientStatusResponse) {}
}
// Status of a config from a management server view.
enum ConfigStatus {
// Status info is not available/unknown.
UNKNOWN = 0;
// Management server has sent the config to client and received ACK.
SYNCED = 1;
// Config is not sent.
NOT_SENT = 2;
// Management server has sent the config to client but hasnt received
// ACK/NACK.
STALE = 3;
// Management server has sent the config to client but received NACK. The
// attached config dump will be the latest config (the rejected one), since
// it is the persisted version in the management server.
ERROR = 4;
}
// Request for client status of clients identified by a list of NodeMatchers.
message ClientStatusRequest {
// The node making the csds request.
config.core.v3.Node node = 2;
}
// Detailed config (per xDS) with status.
// [#next-free-field: 8]
message PerXdsConfig {
// Config status generated by management servers. Will not be present if the
// CSDS server is an xDS client.
ConfigStatus status = 1;
oneof per_xds_config {
admin.v3.ListenersConfigDump listener_config = 2;
admin.v3.ClustersConfigDump cluster_config = 3;
admin.v3.RoutesConfigDump route_config = 4;
admin.v3.EndpointsConfigDump endpoint_config = 6;
}
}
// All xds configs for a particular client.
message ClientConfig {
// Node for a particular client.
config.core.v3.Node node = 1;
repeated PerXdsConfig xds_config = 2;
}
message ClientStatusResponse {
// Client configs for the clients specified in the ClientStatusRequest.
repeated ClientConfig config = 1;
}

@ -122,9 +122,11 @@ CORE_SOURCE_FILES = [
'src/core/ext/transport/chttp2/transport/writing.cc', 'src/core/ext/transport/chttp2/transport/writing.cc',
'src/core/ext/transport/inproc/inproc_plugin.cc', 'src/core/ext/transport/inproc/inproc_plugin.cc',
'src/core/ext/transport/inproc/inproc_transport.cc', 'src/core/ext/transport/inproc/inproc_transport.cc',
'src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c',
'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c', 'src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c',
'src/core/ext/upb-generated/envoy/annotations/resource.upb.c', 'src/core/ext/upb-generated/envoy/annotations/resource.upb.c',
'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c', 'src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c',
'src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c',
'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c', 'src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c',
@ -149,6 +151,8 @@ CORE_SOURCE_FILES = [
'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c',
'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c',
'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c', 'src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c',
'src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c',
'src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c',
'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c', 'src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c',
'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c', 'src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c',
'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c', 'src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c',
@ -171,11 +175,14 @@ CORE_SOURCE_FILES = [
'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c', 'src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c',
'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c', 'src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c',
'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c', 'src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c',
'src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c',
'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c', 'src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c',
'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c', 'src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c',
'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c', 'src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c',
@ -214,9 +221,11 @@ CORE_SOURCE_FILES = [
'src/core/ext/upb-generated/xds/core/v3/resource.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource.upb.c',
'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c',
'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c', 'src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c',
'src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c',
@ -241,6 +250,8 @@ CORE_SOURCE_FILES = [
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c',
@ -262,11 +273,14 @@ CORE_SOURCE_FILES = [
'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c',
'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c', 'src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c',
@ -1022,8 +1036,6 @@ CORE_SOURCE_FILES = [
'third_party/upb/upb/decode_fast.c', 'third_party/upb/upb/decode_fast.c',
'third_party/upb/upb/def.c', 'third_party/upb/upb/def.c',
'third_party/upb/upb/encode.c', 'third_party/upb/upb/encode.c',
'third_party/upb/upb/json_decode.c',
'third_party/upb/upb/json_encode.c',
'third_party/upb/upb/msg.c', 'third_party/upb/upb/msg.c',
'third_party/upb/upb/reflection.c', 'third_party/upb/upb/reflection.c',
'third_party/upb/upb/table.c', 'third_party/upb/upb/table.c',

@ -98,6 +98,7 @@ grpc_resource_quota_ref_type grpc_resource_quota_ref_import;
grpc_resource_quota_unref_type grpc_resource_quota_unref_import; grpc_resource_quota_unref_type grpc_resource_quota_unref_import;
grpc_resource_quota_resize_type grpc_resource_quota_resize_import; grpc_resource_quota_resize_type grpc_resource_quota_resize_import;
grpc_resource_quota_set_max_threads_type grpc_resource_quota_set_max_threads_import; grpc_resource_quota_set_max_threads_type grpc_resource_quota_set_max_threads_import;
grpc_dump_xds_configs_type grpc_dump_xds_configs_import;
grpc_resource_quota_arg_vtable_type grpc_resource_quota_arg_vtable_import; grpc_resource_quota_arg_vtable_type grpc_resource_quota_arg_vtable_import;
grpc_channelz_get_top_channels_type grpc_channelz_get_top_channels_import; grpc_channelz_get_top_channels_type grpc_channelz_get_top_channels_import;
grpc_channelz_get_servers_type grpc_channelz_get_servers_import; grpc_channelz_get_servers_type grpc_channelz_get_servers_import;
@ -382,6 +383,7 @@ void grpc_rb_load_imports(HMODULE library) {
grpc_resource_quota_unref_import = (grpc_resource_quota_unref_type) GetProcAddress(library, "grpc_resource_quota_unref"); grpc_resource_quota_unref_import = (grpc_resource_quota_unref_type) GetProcAddress(library, "grpc_resource_quota_unref");
grpc_resource_quota_resize_import = (grpc_resource_quota_resize_type) GetProcAddress(library, "grpc_resource_quota_resize"); grpc_resource_quota_resize_import = (grpc_resource_quota_resize_type) GetProcAddress(library, "grpc_resource_quota_resize");
grpc_resource_quota_set_max_threads_import = (grpc_resource_quota_set_max_threads_type) GetProcAddress(library, "grpc_resource_quota_set_max_threads"); grpc_resource_quota_set_max_threads_import = (grpc_resource_quota_set_max_threads_type) GetProcAddress(library, "grpc_resource_quota_set_max_threads");
grpc_dump_xds_configs_import = (grpc_dump_xds_configs_type) GetProcAddress(library, "grpc_dump_xds_configs");
grpc_resource_quota_arg_vtable_import = (grpc_resource_quota_arg_vtable_type) GetProcAddress(library, "grpc_resource_quota_arg_vtable"); grpc_resource_quota_arg_vtable_import = (grpc_resource_quota_arg_vtable_type) GetProcAddress(library, "grpc_resource_quota_arg_vtable");
grpc_channelz_get_top_channels_import = (grpc_channelz_get_top_channels_type) GetProcAddress(library, "grpc_channelz_get_top_channels"); grpc_channelz_get_top_channels_import = (grpc_channelz_get_top_channels_type) GetProcAddress(library, "grpc_channelz_get_top_channels");
grpc_channelz_get_servers_import = (grpc_channelz_get_servers_type) GetProcAddress(library, "grpc_channelz_get_servers"); grpc_channelz_get_servers_import = (grpc_channelz_get_servers_type) GetProcAddress(library, "grpc_channelz_get_servers");

@ -269,6 +269,9 @@ extern grpc_resource_quota_resize_type grpc_resource_quota_resize_import;
typedef void(*grpc_resource_quota_set_max_threads_type)(grpc_resource_quota* resource_quota, int new_max_threads); typedef void(*grpc_resource_quota_set_max_threads_type)(grpc_resource_quota* resource_quota, int new_max_threads);
extern grpc_resource_quota_set_max_threads_type grpc_resource_quota_set_max_threads_import; extern grpc_resource_quota_set_max_threads_type grpc_resource_quota_set_max_threads_import;
#define grpc_resource_quota_set_max_threads grpc_resource_quota_set_max_threads_import #define grpc_resource_quota_set_max_threads grpc_resource_quota_set_max_threads_import
typedef grpc_slice(*grpc_dump_xds_configs_type)();
extern grpc_dump_xds_configs_type grpc_dump_xds_configs_import;
#define grpc_dump_xds_configs grpc_dump_xds_configs_import
typedef const grpc_arg_pointer_vtable*(*grpc_resource_quota_arg_vtable_type)(void); typedef const grpc_arg_pointer_vtable*(*grpc_resource_quota_arg_vtable_type)(void);
extern grpc_resource_quota_arg_vtable_type grpc_resource_quota_arg_vtable_import; extern grpc_resource_quota_arg_vtable_type grpc_resource_quota_arg_vtable_import;
#define grpc_resource_quota_arg_vtable grpc_resource_quota_arg_vtable_import #define grpc_resource_quota_arg_vtable grpc_resource_quota_arg_vtable_import

@ -33,8 +33,6 @@ try:
"third_party/upb/upb/decode.c", "third_party/upb/upb/decode.c",
"third_party/upb/upb/def.c", "third_party/upb/upb/def.c",
"third_party/upb/upb/encode.c", "third_party/upb/upb/encode.c",
"third_party/upb/upb/json_decode.c",
"third_party/upb/upb/json_encode.c",
"third_party/upb/upb/msg.c", "third_party/upb/upb/msg.c",
"third_party/upb/upb/reflection.c", "third_party/upb/upb/reflection.c",
"third_party/upb/upb/table.c", "third_party/upb/upb/table.c",
@ -50,8 +48,6 @@ try:
"third_party/upb/upb/def.h", "third_party/upb/upb/def.h",
"third_party/upb/upb/def.hpp", "third_party/upb/upb/def.hpp",
"third_party/upb/upb/encode.h", "third_party/upb/upb/encode.h",
"third_party/upb/upb/json_decode.h",
"third_party/upb/upb/json_encode.h",
"third_party/upb/upb/msg.h", "third_party/upb/upb/msg.h",
"third_party/upb/upb/port_def.inc", "third_party/upb/upb/port_def.inc",
"third_party/upb/upb/port_undef.inc", "third_party/upb/upb/port_undef.inc",

@ -144,6 +144,7 @@ int main(int argc, char **argv) {
printf("%lx", (unsigned long) grpc_resource_quota_unref); printf("%lx", (unsigned long) grpc_resource_quota_unref);
printf("%lx", (unsigned long) grpc_resource_quota_resize); printf("%lx", (unsigned long) grpc_resource_quota_resize);
printf("%lx", (unsigned long) grpc_resource_quota_set_max_threads); printf("%lx", (unsigned long) grpc_resource_quota_set_max_threads);
printf("%lx", (unsigned long) grpc_dump_xds_configs);
printf("%lx", (unsigned long) grpc_resource_quota_arg_vtable); printf("%lx", (unsigned long) grpc_resource_quota_arg_vtable);
printf("%lx", (unsigned long) grpc_channelz_get_top_channels); printf("%lx", (unsigned long) grpc_channelz_get_top_channels);
printf("%lx", (unsigned long) grpc_channelz_get_servers); printf("%lx", (unsigned long) grpc_channelz_get_servers);

@ -538,6 +538,7 @@ grpc_cc_test(
"//:grpc", "//:grpc",
"//:grpc++", "//:grpc++",
"//:grpc_resolver_fake", "//:grpc_resolver_fake",
"//:grpcpp_csds",
"//src/proto/grpc/testing:echo_messages_proto", "//src/proto/grpc/testing:echo_messages_proto",
"//src/proto/grpc/testing:echo_proto", "//src/proto/grpc/testing:echo_proto",
"//src/proto/grpc/testing/duplicate:echo_duplicate_proto", "//src/proto/grpc/testing/duplicate:echo_duplicate_proto",

@ -69,23 +69,18 @@
#include "src/core/lib/iomgr/sockaddr.h" #include "src/core/lib/iomgr/sockaddr.h"
#include "src/core/lib/security/credentials/fake/fake_credentials.h" #include "src/core/lib/security/credentials/fake/fake_credentials.h"
#include "src/cpp/client/secure_credentials.h" #include "src/cpp/client/secure_credentials.h"
#include "src/cpp/server/csds/csds.h"
#include "src/cpp/server/secure_server_credentials.h" #include "src/cpp/server/secure_server_credentials.h"
#include "test/core/util/port.h"
#include "test/core/util/resolve_localhost_ip46.h"
#include "test/core/util/test_config.h"
#include "test/cpp/end2end/test_service_impl.h"
#include "src/proto/grpc/testing/echo.grpc.pb.h" #include "src/proto/grpc/testing/echo.grpc.pb.h"
#include "src/proto/grpc/testing/xds/ads_for_test.grpc.pb.h" #include "src/proto/grpc/testing/xds/ads_for_test.grpc.pb.h"
#include "src/proto/grpc/testing/xds/cds_for_test.grpc.pb.h" #include "src/proto/grpc/testing/xds/cds_for_test.grpc.pb.h"
#include "src/proto/grpc/testing/xds/eds_for_test.grpc.pb.h" #include "src/proto/grpc/testing/xds/eds_for_test.grpc.pb.h"
#include "src/proto/grpc/testing/xds/lds_rds_for_test.grpc.pb.h" #include "src/proto/grpc/testing/xds/lds_rds_for_test.grpc.pb.h"
#include "src/proto/grpc/testing/xds/lrs_for_test.grpc.pb.h" #include "src/proto/grpc/testing/xds/lrs_for_test.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/ads.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/ads.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/aggregate_cluster.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/aggregate_cluster.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/cluster.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/cluster.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/csds.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/discovery.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/discovery.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/endpoint.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/endpoint.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/fault.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/fault.grpc.pb.h"
@ -95,6 +90,10 @@
#include "src/proto/grpc/testing/xds/v3/route.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/route.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/router.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/router.grpc.pb.h"
#include "src/proto/grpc/testing/xds/v3/tls.grpc.pb.h" #include "src/proto/grpc/testing/xds/v3/tls.grpc.pb.h"
#include "test/core/util/port.h"
#include "test/core/util/resolve_localhost_ip46.h"
#include "test/core/util/test_config.h"
#include "test/cpp/end2end/test_service_impl.h"
namespace grpc { namespace grpc {
namespace testing { namespace testing {
@ -102,6 +101,7 @@ namespace {
using std::chrono::system_clock; using std::chrono::system_clock;
using ::envoy::admin::v3::ClientResourceStatus;
using ::envoy::config::cluster::v3::CircuitBreakers; using ::envoy::config::cluster::v3::CircuitBreakers;
using ::envoy::config::cluster::v3::Cluster; using ::envoy::config::cluster::v3::Cluster;
using ::envoy::config::cluster::v3::CustomClusterType; using ::envoy::config::cluster::v3::CustomClusterType;
@ -1341,6 +1341,11 @@ class TestType {
return *this; return *this;
} }
TestType& set_use_csds_streaming() {
use_csds_streaming_ = true;
return *this;
}
TestType& set_filter_config_setup(const FilterConfigSetup& setup) { TestType& set_filter_config_setup(const FilterConfigSetup& setup) {
filter_config_setup_ = setup; filter_config_setup_ = setup;
return *this; return *this;
@ -1351,6 +1356,7 @@ class TestType {
bool enable_rds_testing() const { return enable_rds_testing_; } bool enable_rds_testing() const { return enable_rds_testing_; }
bool use_v2() const { return use_v2_; } bool use_v2() const { return use_v2_; }
bool use_xds_credentials() const { return use_xds_credentials_; } bool use_xds_credentials() const { return use_xds_credentials_; }
bool use_csds_streaming() const { return use_csds_streaming_; }
const FilterConfigSetup& filter_config_setup() const { const FilterConfigSetup& filter_config_setup() const {
return filter_config_setup_; return filter_config_setup_;
} }
@ -1361,6 +1367,7 @@ class TestType {
if (enable_load_reporting_) retval += "WithLoadReporting"; if (enable_load_reporting_) retval += "WithLoadReporting";
if (enable_rds_testing_) retval += "Rds"; if (enable_rds_testing_) retval += "Rds";
if (use_xds_credentials_) retval += "XdsCreds"; if (use_xds_credentials_) retval += "XdsCreds";
if (use_csds_streaming_) retval += "CsdsStreaming";
if (filter_config_setup_ == kRouteOverride) { if (filter_config_setup_ == kRouteOverride) {
retval += "FilterPerRouteOverride"; retval += "FilterPerRouteOverride";
} }
@ -1373,6 +1380,7 @@ class TestType {
bool enable_rds_testing_ = false; bool enable_rds_testing_ = false;
bool use_v2_ = false; bool use_v2_ = false;
bool use_xds_credentials_ = false; bool use_xds_credentials_ = false;
bool use_csds_streaming_ = false;
FilterConfigSetup filter_config_setup_ = kHTTPConnectionManagerOriginal; FilterConfigSetup filter_config_setup_ = kHTTPConnectionManagerOriginal;
}; };
@ -1878,6 +1886,7 @@ class XdsEnd2endTest : public ::testing::TestWithParam<TestType> {
case METHOD_ECHO2: case METHOD_ECHO2:
return (*stub)->Echo2(context, request, response); return (*stub)->Echo2(context, request, response);
} }
GPR_UNREACHABLE_CODE();
} }
void ResetBackendCounters(size_t start_index = 0, size_t stop_index = 0) { void ResetBackendCounters(size_t start_index = 0, size_t stop_index = 0) {
@ -2419,6 +2428,19 @@ class XdsEnd2endTest : public ::testing::TestWithParam<TestType> {
std::shared_ptr<LrsServiceImpl> lrs_service_; std::shared_ptr<LrsServiceImpl> lrs_service_;
}; };
class AdminServerThread : public ServerThread {
private:
void RegisterAllServices(ServerBuilder* builder) override {
builder->RegisterService(&csds_service_);
}
void StartAllServices() override {}
void ShutdownAllServices() override {}
const char* Type() override { return "Admin"; }
grpc::xds::experimental::ClientStatusDiscoveryService csds_service_;
};
class LongRunningRpc { class LongRunningRpc {
public: public:
void StartRpc(grpc::testing::EchoTestService::Stub* stub, void StartRpc(grpc::testing::EchoTestService::Stub* stub,
@ -10014,6 +10036,768 @@ TEST_P(BootstrapContentsFromEnvVarTest, Vanilla) {
WaitForAllBackends(); WaitForAllBackends();
} }
class ClientStatusDiscoveryServiceTest : public XdsEnd2endTest {
public:
ClientStatusDiscoveryServiceTest() : XdsEnd2endTest(1, 1) {}
void SetUp() override {
XdsEnd2endTest::SetUp();
admin_server_thread_ = absl::make_unique<AdminServerThread>();
admin_server_thread_->Start();
std::string admin_server_address = absl::StrCat(
ipv6_only_ ? "[::1]:" : "127.0.0.1:", admin_server_thread_->port());
admin_channel_ = grpc::CreateChannel(
admin_server_address,
std::make_shared<SecureChannelCredentials>(
grpc_fake_transport_security_credentials_create()));
csds_stub_ =
envoy::service::status::v3::ClientStatusDiscoveryService::NewStub(
admin_channel_);
if (GetParam().use_csds_streaming()) {
stream_ = csds_stub_->StreamClientStatus(&stream_context_);
}
}
void TearDown() override {
if (stream_ != nullptr) {
EXPECT_TRUE(stream_->WritesDone());
Status status = stream_->Finish();
EXPECT_TRUE(status.ok()) << "code=" << status.error_code()
<< " message=" << status.error_message();
}
admin_server_thread_->Shutdown();
XdsEnd2endTest::TearDown();
}
envoy::service::status::v3::ClientStatusResponse FetchCsdsResponse() {
envoy::service::status::v3::ClientStatusResponse response;
if (!GetParam().use_csds_streaming()) {
// Fetch through unary pulls
ClientContext context;
Status status = csds_stub_->FetchClientStatus(
&context, envoy::service::status::v3::ClientStatusRequest(),
&response);
EXPECT_TRUE(status.ok()) << "code=" << status.error_code()
<< " message=" << status.error_message();
} else {
// Fetch through streaming pulls
EXPECT_TRUE(
stream_->Write(envoy::service::status::v3::ClientStatusRequest()));
EXPECT_TRUE(stream_->Read(&response));
}
return response;
}
private:
std::unique_ptr<AdminServerThread> admin_server_thread_;
std::shared_ptr<Channel> admin_channel_;
std::unique_ptr<
envoy::service::status::v3::ClientStatusDiscoveryService::Stub>
csds_stub_;
ClientContext stream_context_;
std::unique_ptr<
ClientReaderWriter<envoy::service::status::v3::ClientStatusRequest,
envoy::service::status::v3::ClientStatusResponse>>
stream_;
};
MATCHER_P4(EqNode, id, user_agent_name, user_agent_version, client_features,
"equals Node") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(id, arg.id(), result_listener);
ok &= ::testing::ExplainMatchResult(user_agent_name, arg.user_agent_name(),
result_listener);
ok &= ::testing::ExplainMatchResult(
user_agent_version, arg.user_agent_version(), result_listener);
ok &= ::testing::ExplainMatchResult(client_features, arg.client_features(),
result_listener);
return ok;
}
MATCHER_P2(EqListenersConfigDump, version_info, dynamic_listeners,
"equals ListenerConfigDump") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(::testing::ElementsAre(),
arg.static_listeners(), result_listener);
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
ok &= ::testing::ExplainMatchResult(dynamic_listeners,
arg.dynamic_listeners(), result_listener);
return ok;
}
MATCHER_P2(EqDynamicListenerState, version_info, listener,
"equals DynamicListenerState") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
ok &=
::testing::ExplainMatchResult(listener, arg.listener(), result_listener);
return ok;
}
MATCHER_P2(EqListener, name, api_listener, "equals Listener") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(name, arg.name(), result_listener);
ok &= ::testing::ExplainMatchResult(
api_listener, arg.api_listener().api_listener(), result_listener);
return ok;
}
MATCHER_P(EqHttpConnectionManagerNotRds, route_config,
"equals HttpConnectionManager") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(route_config, arg.route_config(),
result_listener);
return ok;
}
MATCHER_P(EqRouteConfigurationName, name, "equals RouteConfiguration") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(name, arg.name(), result_listener);
return ok;
}
MATCHER_P2(EqRouteConfiguration, name, cluster_name,
"equals RouteConfiguration") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(name, arg.name(), result_listener);
ok &= ::testing::ExplainMatchResult(
::testing::ElementsAre(::testing::Property(
&envoy::config::route::v3::VirtualHost::routes,
::testing::ElementsAre(::testing::Property(
&envoy::config::route::v3::Route::route,
::testing::Property(
&envoy::config::route::v3::RouteAction::cluster,
cluster_name))))),
arg.virtual_hosts(), result_listener);
return ok;
}
MATCHER_P(EqRoutesConfigDump, dynamic_route_configs,
"equals RoutesConfigDump") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(
::testing::ElementsAre(), arg.static_route_configs(), result_listener);
ok &= ::testing::ExplainMatchResult(
dynamic_route_configs, arg.dynamic_route_configs(), result_listener);
return ok;
}
MATCHER_P2(EqClustersConfigDump, version_info, dynamic_active_clusters,
"equals ClustersConfigDump") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(::testing::ElementsAre(),
arg.static_clusters(), result_listener);
ok &= ::testing::ExplainMatchResult(::testing::ElementsAre(),
arg.dynamic_warming_clusters(),
result_listener);
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
ok &= ::testing::ExplainMatchResult(
dynamic_active_clusters, arg.dynamic_active_clusters(), result_listener);
return ok;
}
MATCHER_P(EqCluster, name, "equals Cluster") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(name, arg.name(), result_listener);
return ok;
}
MATCHER_P(EqEndpointsConfigDump, dynamic_endpoint_configs,
"equals EndpointsConfigDump") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(dynamic_endpoint_configs,
arg.dynamic_endpoint_configs(),
result_listener);
return ok;
}
MATCHER_P(EqEndpoint, port, "equals Endpoint") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(
port, arg.address().socket_address().port_value(), result_listener);
return ok;
}
MATCHER_P2(EqLocalityLbEndpoints, port, weight, "equals LocalityLbEndpoints") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(
::testing::ElementsAre(::testing::Property(
&envoy::config::endpoint::v3::LbEndpoint::endpoint,
EqEndpoint(port))),
arg.lb_endpoints(), result_listener);
ok &= ::testing::ExplainMatchResult(
weight, arg.load_balancing_weight().value(), result_listener);
return ok;
}
MATCHER_P(EqClusterLoadAssignmentName, cluster_name,
"equals ClusterLoadAssignment") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(cluster_name, arg.cluster_name(),
result_listener);
return ok;
}
MATCHER_P3(EqClusterLoadAssignment, cluster_name, port, weight,
"equals ClusterLoadAssignment") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(cluster_name, arg.cluster_name(),
result_listener);
ok &= ::testing::ExplainMatchResult(
::testing::ElementsAre(EqLocalityLbEndpoints(port, weight)),
arg.endpoints(), result_listener);
return ok;
}
MATCHER_P2(EqUpdateFailureState, details, version_info,
"equals UpdateFailureState") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(details, arg.details(), result_listener);
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
return ok;
}
MATCHER_P(UnpackListener, matcher, "is a Listener") {
Listener config;
if (!::testing::ExplainMatchResult(true, arg.UnpackTo(&config),
result_listener)) {
return false;
}
return ::testing::ExplainMatchResult(matcher, config, result_listener);
}
MATCHER_P(UnpackRouteConfiguration, matcher, "is a RouteConfiguration") {
RouteConfiguration config;
if (!::testing::ExplainMatchResult(true, arg.UnpackTo(&config),
result_listener)) {
return false;
}
return ::testing::ExplainMatchResult(matcher, config, result_listener);
}
MATCHER_P(UnpackHttpConnectionManager, matcher, "is a HttpConnectionManager") {
HttpConnectionManager config;
if (!::testing::ExplainMatchResult(true, arg.UnpackTo(&config),
result_listener)) {
return false;
}
return ::testing::ExplainMatchResult(matcher, config, result_listener);
}
MATCHER_P(UnpackCluster, matcher, "is a Cluster") {
Cluster config;
if (!::testing::ExplainMatchResult(true, arg.UnpackTo(&config),
result_listener)) {
return false;
}
return ::testing::ExplainMatchResult(matcher, config, result_listener);
}
MATCHER_P(UnpackClusterLoadAssignment, matcher, "is a ClusterLoadAssignment") {
ClusterLoadAssignment config;
if (!::testing::ExplainMatchResult(true, arg.UnpackTo(&config),
result_listener)) {
return false;
}
return ::testing::ExplainMatchResult(matcher, config, result_listener);
}
MATCHER_P5(EqDynamicListener, name, version_info, client_status,
api_listener_matcher, error_state, "equals DynamicListener") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(false, arg.has_warming_state(),
result_listener);
ok &= ::testing::ExplainMatchResult(false, arg.has_draining_state(),
result_listener);
ok &= ::testing::ExplainMatchResult(name, arg.name(), result_listener);
ok &= ::testing::ExplainMatchResult(client_status, arg.client_status(),
result_listener);
if (client_status == ClientResourceStatus::ACKED ||
client_status == ClientResourceStatus::NACKED) {
ok &= ::testing::ExplainMatchResult(
EqDynamicListenerState(version_info, UnpackListener(EqListener(
name, api_listener_matcher))),
arg.active_state(), result_listener);
}
ok &= ::testing::ExplainMatchResult(error_state, arg.error_state(),
result_listener);
return ok;
}
MATCHER_P5(EqDynamicRouteConfig, name, version_info, client_status,
cluster_name, error_state, "equals DynamicRouteConfig") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
if (client_status == ClientResourceStatus::REQUESTED ||
client_status == ClientResourceStatus::DOES_NOT_EXIST) {
ok &= ::testing::ExplainMatchResult(
UnpackRouteConfiguration(EqRouteConfigurationName(name)),
arg.route_config(), result_listener);
} else {
ok &= ::testing::ExplainMatchResult(
UnpackRouteConfiguration(EqRouteConfiguration(name, cluster_name)),
arg.route_config(), result_listener);
}
ok &= ::testing::ExplainMatchResult(error_state, arg.error_state(),
result_listener);
ok &= ::testing::ExplainMatchResult(client_status, arg.client_status(),
result_listener);
return ok;
}
MATCHER_P4(EqDynamicCluster, name, version_info, client_status, error_state,
"equals DynamicCluster") {
bool ok = true;
ok &= ::testing::ExplainMatchResult(UnpackCluster(EqCluster(name)),
arg.cluster(), result_listener);
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
ok &= ::testing::ExplainMatchResult(client_status, arg.client_status(),
result_listener);
ok &= ::testing::ExplainMatchResult(error_state, arg.error_state(),
result_listener);
return ok;
}
MATCHER_P6(EqDynamicEndpointConfig, name, version_info, client_status, port,
weight, error_state, "equals DynamicEndpointConfig") {
bool ok = true;
if (client_status == ClientResourceStatus::REQUESTED ||
client_status == ClientResourceStatus::DOES_NOT_EXIST) {
ok &= ::testing::ExplainMatchResult(
UnpackClusterLoadAssignment(EqClusterLoadAssignmentName(name)),
arg.endpoint_config(), result_listener);
} else {
ok &= ::testing::ExplainMatchResult(
UnpackClusterLoadAssignment(
EqClusterLoadAssignment(name, port, weight)),
arg.endpoint_config(), result_listener);
}
ok &= ::testing::ExplainMatchResult(version_info, arg.version_info(),
result_listener);
ok &= ::testing::ExplainMatchResult(client_status, arg.client_status(),
result_listener);
ok &= ::testing::ExplainMatchResult(error_state, arg.error_state(),
result_listener);
return ok;
}
MATCHER(IsRdsEnabledHCM, "is a RDS enabled HttpConnectionManager") {
return ::testing::ExplainMatchResult(
UnpackHttpConnectionManager(
::testing::Property(&HttpConnectionManager::has_rds, true)),
arg, result_listener);
}
MATCHER_P2(EqNoRdsHCM, route_configuration_name, cluster_name,
"equals RDS disabled HttpConnectionManager") {
return ::testing::ExplainMatchResult(
UnpackHttpConnectionManager(EqHttpConnectionManagerNotRds(
EqRouteConfiguration(route_configuration_name, cluster_name))),
arg, result_listener);
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpVanilla) {
const size_t kNumRpcs = 5;
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
AdsServiceImpl::EdsResourceArgs args({
{"locality0", {backends_[0]->port()}},
});
balancers_[0]->ads_service()->SetEdsResource(
BuildEdsResource(args, DefaultEdsServiceName()));
// Send several RPCs to ensure the xDS setup works
CheckRpcSendOk(kNumRpcs);
// Fetches the client config
auto csds_response = FetchCsdsResponse();
gpr_log(GPR_INFO, "xDS config dump: %s", csds_response.DebugString().c_str());
EXPECT_EQ(1, csds_response.config_size());
const auto& client_config = csds_response.config(0);
// Validate the Node information
EXPECT_THAT(client_config.node(),
EqNode("xds_end2end_test", ::testing::HasSubstr("C-core"),
::testing::HasSubstr(grpc_version_string()),
::testing::ElementsAre(
"envoy.lb.does_not_support_overprovisioning")));
// Prepare matches for RDS on or off
::testing::Matcher<google::protobuf::Any> api_listener_matcher;
::testing::Matcher<envoy::admin::v3::RoutesConfigDump>
route_config_dump_matcher;
if (GetParam().enable_rds_testing()) {
api_listener_matcher = IsRdsEnabledHCM();
route_config_dump_matcher =
EqRoutesConfigDump(::testing::ElementsAre(EqDynamicRouteConfig(
kDefaultRouteConfigurationName, "1", ClientResourceStatus::ACKED,
kDefaultClusterName, ::testing::_)));
} else {
api_listener_matcher =
EqNoRdsHCM(kDefaultRouteConfigurationName, kDefaultClusterName);
route_config_dump_matcher = EqRoutesConfigDump(::testing::ElementsAre());
}
// Validate the dumped xDS configs
EXPECT_THAT(
client_config.xds_config(),
::testing::UnorderedElementsAre(
::testing::Property(
&envoy::service::status::v3::PerXdsConfig::listener_config,
EqListenersConfigDump(
"1", ::testing::ElementsAre(EqDynamicListener(
kServerName, "1", ClientResourceStatus::ACKED,
api_listener_matcher, ::testing::_)))),
::testing::Property(
&envoy::service::status::v3::PerXdsConfig::route_config,
route_config_dump_matcher),
::testing::Property(
&envoy::service::status::v3::PerXdsConfig::cluster_config,
EqClustersConfigDump(
"1", ::testing::ElementsAre(EqDynamicCluster(
kDefaultClusterName, "1",
ClientResourceStatus::ACKED, ::testing::_)))),
::testing::Property(
&envoy::service::status::v3::PerXdsConfig::endpoint_config,
EqEndpointsConfigDump(
::testing::ElementsAre(EqDynamicEndpointConfig(
kDefaultEdsServiceName, "1", ClientResourceStatus::ACKED,
backends_[0]->port(), kDefaultLocalityWeight,
::testing::_))))));
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpEmpty) {
// The CSDS service should not fail if XdsClient is not initialized or there
// is no working xDS configs.
FetchCsdsResponse();
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpListenerError) {
int kFetchConfigRetries = 3;
int kFetchIntervalMilliseconds = 200;
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
AdsServiceImpl::EdsResourceArgs args({
{"locality0", {backends_[0]->port()}},
});
balancers_[0]->ads_service()->SetEdsResource(
BuildEdsResource(args, DefaultEdsServiceName()));
// Ensure the xDS resolver has working configs.
CheckRpcSendOk();
// Bad Listener should be rejected.
Listener listener;
listener.set_name(kServerName);
balancers_[0]->ads_service()->SetLdsResource(listener);
// The old xDS configs should still be effective.
CheckRpcSendOk();
::testing::Matcher<google::protobuf::Any> api_listener_matcher;
if (GetParam().enable_rds_testing()) {
api_listener_matcher = IsRdsEnabledHCM();
} else {
api_listener_matcher =
EqNoRdsHCM(kDefaultRouteConfigurationName, kDefaultClusterName);
}
for (int o = 0; o < kFetchConfigRetries; o++) {
auto csds_response = FetchCsdsResponse();
// Check if error state is propagated
bool ok = ::testing::Value(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::listener_config,
EqListenersConfigDump(
"1",
::testing::ElementsAre(EqDynamicListener(
kServerName, "1", ClientResourceStatus::NACKED,
api_listener_matcher,
EqUpdateFailureState(
::testing::HasSubstr(
"Listener has neither address nor ApiListener"),
"2")))))));
if (ok) return; // TEST PASSED!
gpr_sleep_until(
grpc_timeout_milliseconds_to_deadline(kFetchIntervalMilliseconds));
}
FAIL() << "error_state not seen in CSDS responses";
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpRouteError) {
int kFetchConfigRetries = 3;
int kFetchIntervalMilliseconds = 200;
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
AdsServiceImpl::EdsResourceArgs args({
{"locality0", {backends_[0]->port()}},
});
balancers_[0]->ads_service()->SetEdsResource(
BuildEdsResource(args, DefaultEdsServiceName()));
// Ensure the xDS resolver has working configs.
CheckRpcSendOk();
// Bad route config will be rejected.
RouteConfiguration route_config;
route_config.set_name(kDefaultRouteConfigurationName);
route_config.add_virtual_hosts();
SetRouteConfiguration(0, route_config);
// The old xDS configs should still be effective.
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
CheckRpcSendOk();
for (int o = 0; o < kFetchConfigRetries; o++) {
auto csds_response = FetchCsdsResponse();
bool ok = false;
if (GetParam().enable_rds_testing()) {
ok = ::testing::Value(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::route_config,
EqRoutesConfigDump(::testing::ElementsAre(EqDynamicRouteConfig(
kDefaultRouteConfigurationName, "1",
ClientResourceStatus::NACKED, kDefaultClusterName,
EqUpdateFailureState(
::testing::HasSubstr("VirtualHost has no domains"),
"2")))))));
} else {
ok = ::testing::Value(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::listener_config,
EqListenersConfigDump(
"1",
::testing::ElementsAre(EqDynamicListener(
kServerName, "1", ClientResourceStatus::NACKED,
EqNoRdsHCM(kDefaultRouteConfigurationName,
kDefaultClusterName),
EqUpdateFailureState(
::testing::HasSubstr("VirtualHost has no domains"),
"2")))))));
}
if (ok) return; // TEST PASSED!
gpr_sleep_until(
grpc_timeout_milliseconds_to_deadline(kFetchIntervalMilliseconds));
}
FAIL() << "error_state not seen in CSDS responses";
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpClusterError) {
int kFetchConfigRetries = 3;
int kFetchIntervalMilliseconds = 200;
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
AdsServiceImpl::EdsResourceArgs args({
{"locality0", {backends_[0]->port()}},
});
balancers_[0]->ads_service()->SetEdsResource(
BuildEdsResource(args, DefaultEdsServiceName()));
// Ensure the xDS resolver has working configs.
CheckRpcSendOk();
// Listener without any route, will be rejected.
Cluster cluster;
cluster.set_name(kDefaultClusterName);
balancers_[0]->ads_service()->SetCdsResource(cluster);
// The old xDS configs should still be effective.
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
CheckRpcSendOk();
for (int o = 0; o < kFetchConfigRetries; o++) {
auto csds_response = FetchCsdsResponse();
// Check if error state is propagated
bool ok = ::testing::Value(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::cluster_config,
EqClustersConfigDump(
"1", ::testing::ElementsAre(EqDynamicCluster(
kDefaultClusterName, "1", ClientResourceStatus::NACKED,
EqUpdateFailureState(
::testing::HasSubstr("DiscoveryType not found"),
"2")))))));
if (ok) return; // TEST PASSED!
gpr_sleep_until(
grpc_timeout_milliseconds_to_deadline(kFetchIntervalMilliseconds));
}
FAIL() << "error_state not seen in CSDS responses";
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpEndpointError) {
int kFetchConfigRetries = 3;
int kFetchIntervalMilliseconds = 200;
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
AdsServiceImpl::EdsResourceArgs args({
{"locality0", {backends_[0]->port()}},
});
balancers_[0]->ads_service()->SetEdsResource(
BuildEdsResource(args, DefaultEdsServiceName()));
// Ensure the xDS resolver has working configs.
CheckRpcSendOk();
// Bad endpoint config will be rejected.
ClusterLoadAssignment cluster_load_assignment;
cluster_load_assignment.set_cluster_name(kDefaultEdsServiceName);
auto* endpoints = cluster_load_assignment.add_endpoints();
endpoints->mutable_load_balancing_weight()->set_value(1);
auto* endpoint = endpoints->add_lb_endpoints()->mutable_endpoint();
endpoint->mutable_address()->mutable_socket_address()->set_port_value(1 << 1);
balancers_[0]->ads_service()->SetEdsResource(cluster_load_assignment);
// The old xDS configs should still be effective.
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
CheckRpcSendOk();
for (int o = 0; o < kFetchConfigRetries; o++) {
auto csds_response = FetchCsdsResponse();
// Check if error state is propagated
bool ok = ::testing::Value(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::endpoint_config,
EqEndpointsConfigDump(
::testing::ElementsAre(EqDynamicEndpointConfig(
kDefaultEdsServiceName, "1", ClientResourceStatus::NACKED,
backends_[0]->port(), kDefaultLocalityWeight,
EqUpdateFailureState(::testing::HasSubstr("Empty locality"),
"2")))))));
if (ok) return; // TEST PASSED!
gpr_sleep_until(
grpc_timeout_milliseconds_to_deadline(kFetchIntervalMilliseconds));
}
FAIL() << "error_state not seen in CSDS responses";
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpListenerRequested) {
int kTimeoutMillisecond = 1000;
balancers_[0]->ads_service()->UnsetResource(kLdsTypeUrl, kServerName);
CheckRpcSendFailure(1, RpcOptions().set_timeout_ms(kTimeoutMillisecond),
grpc::DEADLINE_EXCEEDED);
auto csds_response = FetchCsdsResponse();
EXPECT_THAT(csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::listener_config,
EqListenersConfigDump(
::testing::_, ::testing::ElementsAre(EqDynamicListener(
kServerName, ::testing::_,
ClientResourceStatus::REQUESTED,
::testing::_, ::testing::_))))));
}
TEST_P(ClientStatusDiscoveryServiceTest, XdsConfigDumpClusterRequested) {
int kTimeoutMillisecond = 1000;
std::string kClusterName1 = "cluster-1";
std::string kClusterName2 = "cluster-2";
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
// Create a route config requesting two non-existing clusters
RouteConfiguration route_config;
route_config.set_name(kDefaultRouteConfigurationName);
auto* vh = route_config.add_virtual_hosts();
// The VirtualHost must match the domain name, otherwise will cause resolver
// transient failure.
vh->add_domains("*");
auto* routes1 = vh->add_routes();
routes1->mutable_match()->set_prefix("");
routes1->mutable_route()->set_cluster(kClusterName1);
auto* routes2 = vh->add_routes();
routes2->mutable_match()->set_prefix("");
routes2->mutable_route()->set_cluster(kClusterName2);
SetRouteConfiguration(0, route_config);
// Try to get the configs plumb through
CheckRpcSendFailure(1, RpcOptions().set_timeout_ms(kTimeoutMillisecond),
grpc::DEADLINE_EXCEEDED);
auto csds_response = FetchCsdsResponse();
EXPECT_THAT(csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::cluster_config,
EqClustersConfigDump(
::testing::_,
::testing::UnorderedElementsAre(
EqDynamicCluster(kClusterName1, ::testing::_,
ClientResourceStatus::REQUESTED,
::testing::_),
EqDynamicCluster(kClusterName2, ::testing::_,
ClientResourceStatus::REQUESTED,
::testing::_))))));
}
class CsdsShortAdsTimeoutTest : public ClientStatusDiscoveryServiceTest {
void SetUp() override {
// Shorten the ADS subscription timeout to speed up the test run.
xds_resource_does_not_exist_timeout_ms_ = 500;
ClientStatusDiscoveryServiceTest::SetUp();
}
};
TEST_P(CsdsShortAdsTimeoutTest, XdsConfigDumpListenerDoesNotExist) {
int kTimeoutMillisecond = 1000000; // 1000s wait for the transient failure.
balancers_[0]->ads_service()->UnsetResource(kLdsTypeUrl, kServerName);
CheckRpcSendFailure(1, RpcOptions().set_timeout_ms(kTimeoutMillisecond),
grpc::UNAVAILABLE);
auto csds_response = FetchCsdsResponse();
EXPECT_THAT(csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::listener_config,
EqListenersConfigDump(
::testing::_, ::testing::ElementsAre(EqDynamicListener(
kServerName, ::testing::_,
ClientResourceStatus::DOES_NOT_EXIST,
::testing::_, ::testing::_))))));
}
TEST_P(CsdsShortAdsTimeoutTest, XdsConfigDumpRouteConfigDoesNotExist) {
if (!GetParam().enable_rds_testing()) return;
int kTimeoutMillisecond = 1000000; // 1000s wait for the transient failure.
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
balancers_[0]->ads_service()->UnsetResource(kRdsTypeUrl,
kDefaultRouteConfigurationName);
CheckRpcSendFailure(1, RpcOptions().set_timeout_ms(kTimeoutMillisecond),
grpc::UNAVAILABLE);
auto csds_response = FetchCsdsResponse();
EXPECT_THAT(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::route_config,
EqRoutesConfigDump(::testing::ElementsAre(
EqDynamicRouteConfig(kDefaultRouteConfigurationName, ::testing::_,
ClientResourceStatus::DOES_NOT_EXIST,
::testing::_, ::testing::_))))));
}
TEST_P(CsdsShortAdsTimeoutTest, XdsConfigDumpClusterDoesNotExist) {
int kTimeoutMillisecond = 1000000; // 1000s wait for the transient failure.
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
balancers_[0]->ads_service()->UnsetResource(kCdsTypeUrl, kDefaultClusterName);
CheckRpcSendFailure(1, RpcOptions().set_timeout_ms(kTimeoutMillisecond),
grpc::UNAVAILABLE);
auto csds_response = FetchCsdsResponse();
EXPECT_THAT(csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::cluster_config,
EqClustersConfigDump(::testing::_,
::testing::ElementsAre(EqDynamicCluster(
kDefaultClusterName, ::testing::_,
ClientResourceStatus::DOES_NOT_EXIST,
::testing::_))))));
}
TEST_P(CsdsShortAdsTimeoutTest, XdsConfigDumpEndpointDoesNotExist) {
int kTimeoutMillisecond = 1000000; // 1000s wait for the transient failure.
SetNextResolution({});
SetNextResolutionForLbChannelAllBalancers();
balancers_[0]->ads_service()->UnsetResource(kEdsTypeUrl,
kDefaultEdsServiceName);
CheckRpcSendFailure(1, RpcOptions().set_timeout_ms(kTimeoutMillisecond),
grpc::UNAVAILABLE);
auto csds_response = FetchCsdsResponse();
EXPECT_THAT(
csds_response.config(0).xds_config(),
::testing::Contains(::testing::Property(
&envoy::service::status::v3::PerXdsConfig::endpoint_config,
EqEndpointsConfigDump(::testing::ElementsAre(EqDynamicEndpointConfig(
kDefaultEdsServiceName, ::testing::_,
ClientResourceStatus::DOES_NOT_EXIST, ::testing::_, ::testing::_,
::testing::_))))));
}
std::string TestTypeName(const ::testing::TestParamInfo<TestType>& info) { std::string TestTypeName(const ::testing::TestParamInfo<TestType>& info) {
return info.param.AsString(); return info.param.AsString();
} }
@ -10169,6 +10953,23 @@ INSTANTIATE_TEST_SUITE_P(
INSTANTIATE_TEST_SUITE_P(XdsTest, BootstrapContentsFromEnvVarTest, INSTANTIATE_TEST_SUITE_P(XdsTest, BootstrapContentsFromEnvVarTest,
::testing::Values(TestType()), &TestTypeName); ::testing::Values(TestType()), &TestTypeName);
// Run CSDS tests with RDS enabled and disabled.
INSTANTIATE_TEST_SUITE_P(
XdsTest, ClientStatusDiscoveryServiceTest,
::testing::Values(
TestType(), TestType().set_enable_rds_testing(),
TestType().set_use_csds_streaming(),
TestType().set_enable_rds_testing().set_use_csds_streaming()),
&TestTypeName);
INSTANTIATE_TEST_SUITE_P(
XdsTest, CsdsShortAdsTimeoutTest,
::testing::Values(
TestType(), TestType().set_enable_rds_testing(),
TestType().set_use_csds_streaming(),
TestType().set_enable_rds_testing().set_use_csds_streaming()),
&TestTypeName);
} // namespace } // namespace
} // namespace testing } // namespace testing
} // namespace grpc } // namespace grpc

@ -43,9 +43,11 @@ $bazel build @upb//upbc:protoc-gen-upbdefs
UPBDEFS_PLUGIN=$PWD/bazel-bin/external/upb/upbc/protoc-gen-upbdefs UPBDEFS_PLUGIN=$PWD/bazel-bin/external/upb/upbc/protoc-gen-upbdefs
proto_files=( \ proto_files=( \
"envoy/admin/v3/config_dump.proto" \
"envoy/annotations/deprecation.proto" \ "envoy/annotations/deprecation.proto" \
"envoy/annotations/resource.proto" \ "envoy/annotations/resource.proto" \
"envoy/config/accesslog/v3/accesslog.proto" \ "envoy/config/accesslog/v3/accesslog.proto" \
"envoy/config/bootstrap/v3/bootstrap.proto" \
"envoy/config/cluster/v3/circuit_breaker.proto" \ "envoy/config/cluster/v3/circuit_breaker.proto" \
"envoy/config/cluster/v3/cluster.proto" \ "envoy/config/cluster/v3/cluster.proto" \
"envoy/config/cluster/v3/filter.proto" \ "envoy/config/cluster/v3/filter.proto" \
@ -70,6 +72,8 @@ proto_files=( \
"envoy/config/listener/v3/listener.proto" \ "envoy/config/listener/v3/listener.proto" \
"envoy/config/listener/v3/listener_components.proto" \ "envoy/config/listener/v3/listener_components.proto" \
"envoy/config/listener/v3/udp_listener_config.proto" \ "envoy/config/listener/v3/udp_listener_config.proto" \
"envoy/config/metrics/v3/stats.proto" \
"envoy/config/overload/v3/overload.proto" \
"envoy/config/rbac/v3/rbac.proto" \ "envoy/config/rbac/v3/rbac.proto" \
"envoy/config/route/v3/route.proto" \ "envoy/config/route/v3/route.proto" \
"envoy/config/route/v3/route_components.proto" \ "envoy/config/route/v3/route_components.proto" \
@ -92,11 +96,14 @@ proto_files=( \
"envoy/service/load_stats/v3/lrs.proto" \ "envoy/service/load_stats/v3/lrs.proto" \
"envoy/service/route/v3/rds.proto" \ "envoy/service/route/v3/rds.proto" \
"envoy/service/route/v3/srds.proto" \ "envoy/service/route/v3/srds.proto" \
"envoy/service/status/v3/csds.proto" \
"envoy/type/matcher/v3/metadata.proto" \ "envoy/type/matcher/v3/metadata.proto" \
"envoy/type/matcher/v3/node.proto" \
"envoy/type/matcher/v3/number.proto" \ "envoy/type/matcher/v3/number.proto" \
"envoy/type/matcher/v3/path.proto" \ "envoy/type/matcher/v3/path.proto" \
"envoy/type/matcher/v3/regex.proto" \ "envoy/type/matcher/v3/regex.proto" \
"envoy/type/matcher/v3/string.proto" \ "envoy/type/matcher/v3/string.proto" \
"envoy/type/matcher/v3/struct.proto" \
"envoy/type/matcher/v3/value.proto" \ "envoy/type/matcher/v3/value.proto" \
"envoy/type/metadata/v3/metadata.proto" \ "envoy/type/metadata/v3/metadata.proto" \
"envoy/type/tracing/v3/custom_tag.proto" \ "envoy/type/tracing/v3/custom_tag.proto" \

@ -1231,12 +1231,16 @@ src/core/ext/transport/chttp2/transport/writing.cc \
src/core/ext/transport/inproc/inproc_plugin.cc \ src/core/ext/transport/inproc/inproc_plugin.cc \
src/core/ext/transport/inproc/inproc_transport.cc \ src/core/ext/transport/inproc/inproc_transport.cc \
src/core/ext/transport/inproc/inproc_transport.h \ src/core/ext/transport/inproc/inproc_transport.h \
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c \
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h \
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \ src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h \ src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h \
src/core/ext/upb-generated/envoy/annotations/resource.upb.c \ src/core/ext/upb-generated/envoy/annotations/resource.upb.c \
src/core/ext/upb-generated/envoy/annotations/resource.upb.h \ src/core/ext/upb-generated/envoy/annotations/resource.upb.h \
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \ src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h \ src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h \
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c \
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h \
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h \ src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h \
src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \
@ -1285,6 +1289,10 @@ src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h \ src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h \
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h \ src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h \
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c \
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h \
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c \
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h \
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \ src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h \ src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h \
src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \ src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \
@ -1329,8 +1337,12 @@ src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h \ src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h \
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \ src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h \ src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h \
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c \
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \
@ -1339,6 +1351,8 @@ src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h \
src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \
@ -1413,12 +1427,16 @@ src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h \ src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h \
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h \ src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h \
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \
@ -1467,6 +1485,10 @@ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbd
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \
@ -1509,8 +1531,12 @@ src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \
@ -1519,6 +1545,8 @@ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \

@ -1066,12 +1066,16 @@ src/core/ext/transport/chttp2/transport/writing.cc \
src/core/ext/transport/inproc/inproc_plugin.cc \ src/core/ext/transport/inproc/inproc_plugin.cc \
src/core/ext/transport/inproc/inproc_transport.cc \ src/core/ext/transport/inproc/inproc_transport.cc \
src/core/ext/transport/inproc/inproc_transport.h \ src/core/ext/transport/inproc/inproc_transport.h \
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c \
src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h \
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \ src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c \
src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h \ src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h \
src/core/ext/upb-generated/envoy/annotations/resource.upb.c \ src/core/ext/upb-generated/envoy/annotations/resource.upb.c \
src/core/ext/upb-generated/envoy/annotations/resource.upb.h \ src/core/ext/upb-generated/envoy/annotations/resource.upb.h \
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \ src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c \
src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h \ src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h \
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c \
src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h \
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h \ src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h \
src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \ src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c \
@ -1120,6 +1124,10 @@ src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h \ src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h \
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \ src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \
src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h \ src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h \
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c \
src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h \
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c \
src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h \
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \ src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c \
src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h \ src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h \
src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \ src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c \
@ -1164,8 +1172,12 @@ src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h \ src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h \
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \ src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \
src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h \ src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h \
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c \
src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c \
@ -1174,6 +1186,8 @@ src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h \
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \ src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c \
src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h \ src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h \
src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \ src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c \
@ -1248,12 +1262,16 @@ src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h \ src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h \
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \ src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c \
src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h \ src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h \
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c \
@ -1302,6 +1320,10 @@ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbd
src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c \
@ -1344,8 +1366,12 @@ src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c \
@ -1354,6 +1380,8 @@ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c \
src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h \ src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h \
src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \ src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c \

Loading…
Cancel
Save