* Revert "Revert #27780 (#27944)"

This reverts commit 26e7560309.

* Fix google_api_upbdefs
pull/28149/head
Esun Kim 3 years ago committed by GitHub
parent 33a4d6920d
commit 9be7ca5a55
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 170
      BUILD
  2. 5
      bazel/grpc_build_system.bzl
  3. 55
      src/core/ext/upbdefs-generated/src/proto/grpc/gcp/altscontext.upbdefs.c
  4. 40
      src/core/ext/upbdefs-generated/src/proto/grpc/gcp/altscontext.upbdefs.h
  5. 149
      src/core/ext/upbdefs-generated/src/proto/grpc/gcp/handshaker.upbdefs.c
  6. 90
      src/core/ext/upbdefs-generated/src/proto/grpc/gcp/handshaker.upbdefs.h
  7. 45
      src/core/ext/upbdefs-generated/src/proto/grpc/gcp/transport_security_common.upbdefs.c
  8. 40
      src/core/ext/upbdefs-generated/src/proto/grpc/gcp/transport_security_common.upbdefs.h
  9. 47
      src/core/ext/upbdefs-generated/src/proto/grpc/health/v1/health.upbdefs.c
  10. 40
      src/core/ext/upbdefs-generated/src/proto/grpc/health/v1/health.upbdefs.h
  11. 97
      src/core/ext/upbdefs-generated/src/proto/grpc/lb/v1/load_balancer.upbdefs.c
  12. 75
      src/core/ext/upbdefs-generated/src/proto/grpc/lb/v1/load_balancer.upbdefs.h
  13. 54
      src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls.upbdefs.c
  14. 45
      src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls.upbdefs.h
  15. 6
      src/proto/grpc/lookup/v1/BUILD
  16. 64
      tools/buildgen/extract_metadata_from_bazel_xml.py
  17. 18
      tools/codegen/core/gen_upb_api.sh
  18. 175
      tools/codegen/core/gen_upb_api_from_bazel_xml.py

170
BUILD

@ -18,6 +18,8 @@ load(
"//bazel:grpc_build_system.bzl",
"grpc_cc_library",
"grpc_generate_one_off_targets",
"grpc_upb_proto_library",
"grpc_upb_proto_reflection_library",
"python_config_settings",
)
load("@bazel_skylib//lib:selects.bzl", "selects")
@ -868,6 +870,7 @@ grpc_cc_library(
"gpr_codegen",
"gpr_tls",
"grpc_codegen",
"protobuf_any_upb",
"useful",
],
)
@ -2451,6 +2454,8 @@ grpc_cc_library(
"grpc_resolver_fake",
"grpc_transport_chttp2_client_insecure",
"orphanable",
"protobuf_duration_upb",
"protobuf_timestamp_upb",
"ref_counted_ptr",
"slice",
],
@ -2493,25 +2498,16 @@ grpc_cc_library(
"grpc_secure",
"grpc_transport_chttp2_client_secure",
"orphanable",
"protobuf_duration_upb",
"protobuf_timestamp_upb",
"ref_counted_ptr",
"slice",
],
)
grpc_cc_library(
grpc_upb_proto_library(
name = "rls_upb",
srcs = [
"src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c",
],
hdrs = [
"src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h",
],
external_deps = [
"upb_lib",
"upb_lib_descriptor",
"upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me",
],
language = "c++",
deps = ["//src/proto/grpc/lookup/v1:rls_proto_descriptor"],
)
grpc_cc_library(
@ -2609,6 +2605,11 @@ grpc_cc_library(
"json",
"json_util",
"orphanable",
"protobuf_any_upb",
"protobuf_duration_upb",
"protobuf_struct_upb",
"protobuf_timestamp_upb",
"protobuf_wrappers_upb",
"ref_counted_ptr",
"slice",
"slice_refcount",
@ -4426,6 +4427,11 @@ grpc_cc_library(
"envoy_type_upb",
"google_api_upb",
"proto_gen_validate_upb",
"protobuf_any_upb",
"protobuf_duration_upb",
"protobuf_struct_upb",
"protobuf_timestamp_upb",
"protobuf_wrappers_upb",
"udpa_annotations_upb",
"xds_core_upb",
],
@ -4629,6 +4635,11 @@ grpc_cc_library(
"envoy_type_upb",
"google_api_upb",
"proto_gen_validate_upb",
"protobuf_any_upb",
"protobuf_duration_upb",
"protobuf_empty_upb",
"protobuf_struct_upb",
"protobuf_wrappers_upb",
"udpa_annotations_upb",
"xds_annotations_upb",
"xds_core_upb",
@ -4729,6 +4740,7 @@ grpc_cc_library(
"envoy_annotations_upb",
"google_api_upb",
"proto_gen_validate_upb",
"protobuf_wrappers_upb",
"udpa_annotations_upb",
],
)
@ -4798,6 +4810,8 @@ grpc_cc_library(
language = "c++",
deps = [
"google_api_upb",
"protobuf_duration_upb",
"protobuf_timestamp_upb",
],
)
@ -4970,6 +4984,7 @@ grpc_cc_library(
deps = [
"google_api_upb",
"proto_gen_validate_upb",
"protobuf_any_upb",
"udpa_annotations_upb",
"xds_annotations_upb",
],
@ -5027,6 +5042,7 @@ grpc_cc_library(
deps = [
"google_api_upb",
"proto_gen_validate_upb",
"protobuf_struct_upb",
],
)
@ -5053,28 +5069,30 @@ grpc_cc_library(
],
)
# Once upb code-gen issue is resolved, replace grpc_health_upb with this.
# grpc_upb_proto_library(
# name = "grpc_health_upb",
# deps = ["//src/proto/grpc/health/v1:health_proto_descriptor"],
# )
grpc_cc_library(
grpc_upb_proto_library(
name = "grpc_health_upb",
srcs = [
"src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c",
],
hdrs = [
"src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h",
],
external_deps = [
"upb_lib",
"upb_lib_descriptor",
"upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me",
],
language = "c++",
deps = ["//src/proto/grpc/health/v1:health_proto_descriptor"],
)
WELL_KNOWN_PROTO_TARGETS = [
"any",
"duration",
"empty",
"struct",
"timestamp",
"wrappers",
]
[grpc_upb_proto_library(
name = "protobuf_" + target + "_upb",
deps = ["@com_google_protobuf//:" + target + "_proto"],
) for target in WELL_KNOWN_PROTO_TARGETS]
[grpc_upb_proto_reflection_library(
name = "protobuf_" + target + "_upbdefs",
deps = ["@com_google_protobuf//:" + target + "_proto"],
) for target in WELL_KNOWN_PROTO_TARGETS]
# Once upb code-gen issue is resolved, remove this.
grpc_cc_library(
name = "google_api_upb",
@ -5083,12 +5101,6 @@ grpc_cc_library(
"src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c",
"src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c",
"src/core/ext/upb-generated/google/api/http.upb.c",
"src/core/ext/upb-generated/google/protobuf/any.upb.c",
"src/core/ext/upb-generated/google/protobuf/duration.upb.c",
"src/core/ext/upb-generated/google/protobuf/empty.upb.c",
"src/core/ext/upb-generated/google/protobuf/struct.upb.c",
"src/core/ext/upb-generated/google/protobuf/timestamp.upb.c",
"src/core/ext/upb-generated/google/protobuf/wrappers.upb.c",
"src/core/ext/upb-generated/google/rpc/status.upb.c",
],
hdrs = [
@ -5096,12 +5108,6 @@ grpc_cc_library(
"src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h",
"src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h",
"src/core/ext/upb-generated/google/api/http.upb.h",
"src/core/ext/upb-generated/google/protobuf/any.upb.h",
"src/core/ext/upb-generated/google/protobuf/duration.upb.h",
"src/core/ext/upb-generated/google/protobuf/empty.upb.h",
"src/core/ext/upb-generated/google/protobuf/struct.upb.h",
"src/core/ext/upb-generated/google/protobuf/timestamp.upb.h",
"src/core/ext/upb-generated/google/protobuf/wrappers.upb.h",
"src/core/ext/upb-generated/google/rpc/status.upb.h",
],
external_deps = [
@ -5110,6 +5116,14 @@ grpc_cc_library(
"upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me",
],
language = "c++",
deps = [
"protobuf_any_upb",
"protobuf_duration_upb",
"protobuf_empty_upb",
"protobuf_struct_upb",
"protobuf_timestamp_upb",
"protobuf_wrappers_upb",
],
)
grpc_cc_library(
@ -5117,23 +5131,11 @@ grpc_cc_library(
srcs = [
"src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c",
"src/core/ext/upbdefs-generated/google/api/http.upbdefs.c",
"src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c",
"src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c",
"src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c",
"src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c",
"src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c",
"src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c",
"src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c",
],
hdrs = [
"src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h",
"src/core/ext/upbdefs-generated/google/api/http.upbdefs.h",
"src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h",
"src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h",
"src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h",
"src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h",
"src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h",
"src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h",
"src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h",
],
external_deps = [
@ -5146,32 +5148,18 @@ grpc_cc_library(
language = "c++",
deps = [
"google_api_upb",
"protobuf_any_upbdefs",
"protobuf_duration_upbdefs",
"protobuf_empty_upbdefs",
"protobuf_struct_upbdefs",
"protobuf_timestamp_upbdefs",
"protobuf_wrappers_upbdefs",
],
)
# Once upb code-gen issue is resolved, replace grpc_lb_upb with this.
# grpc_upb_proto_library(
# name = "grpc_lb_upb",
# deps = ["//src/proto/grpc/lb/v1:load_balancer_proto_descriptor"],
# )
grpc_cc_library(
grpc_upb_proto_library(
name = "grpc_lb_upb",
srcs = [
"src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c",
],
hdrs = [
"src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h",
],
external_deps = [
"upb_lib",
"upb_lib_descriptor",
"upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me",
],
language = "c++",
deps = [
"google_api_upb",
],
deps = ["//src/proto/grpc/lb/v1:load_balancer_proto_descriptor"],
)
# Once upb code-gen issue is resolved, replace meshca_upb with this.
@ -5194,33 +5182,13 @@ grpc_cc_library(
language = "c++",
deps = [
"google_api_upb",
"protobuf_duration_upb",
],
)
# Once upb code-gen issue is resolved, replace alts_upb with this.
# grpc_upb_proto_library(
# name = "alts_upb",
# deps = ["//src/proto/grpc/gcp:alts_handshaker_proto"],
# )
grpc_cc_library(
grpc_upb_proto_library(
name = "alts_upb",
srcs = [
"src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c",
"src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c",
"src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c",
],
hdrs = [
"src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h",
"src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h",
"src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h",
],
external_deps = [
"upb_lib",
"upb_lib_descriptor",
"upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me",
],
language = "c++",
deps = ["//src/proto/grpc/gcp:alts_handshaker_proto"],
)
grpc_cc_library(

@ -29,7 +29,7 @@ Contains macros used throughout the repo.
load("//bazel:cc_grpc_library.bzl", "cc_grpc_library")
load("//bazel:copts.bzl", "GRPC_DEFAULT_COPTS")
load("@upb//bazel:upb_proto_library.bzl", "upb_proto_library")
load("@upb//bazel:upb_proto_library.bzl", "upb_proto_library", "upb_proto_reflection_library")
load("@build_bazel_rules_apple//apple:ios.bzl", "ios_unit_test")
# The set of pollers to test against if a test exercises polling
@ -480,6 +480,9 @@ def grpc_objc_library(
def grpc_upb_proto_library(name, deps):
upb_proto_library(name = name, deps = deps)
def grpc_upb_proto_reflection_library(name, deps):
upb_proto_reflection_library(name = name, deps = deps)
# buildifier: disable=unnamed-macro
def python_config_settings():
native.config_setting(

@ -1,55 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/gcp/altscontext.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "src/proto/grpc/gcp/altscontext.upbdefs.h"
#include "src/proto/grpc/gcp/altscontext.upb.h"
extern upb_def_init src_proto_grpc_gcp_transport_security_common_proto_upbdefinit;
static const char descriptor[718] = {'\n', '$', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'g', 'c', 'p', '/', 'a', 'l', 't', 's',
'c', 'o', 'n', 't', 'e', 'x', 't', '.', 'p', 'r', 'o', 't', 'o', '\022', '\010', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '\032', '2',
's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'g', 'c', 'p', '/', 't', 'r', 'a', 'n', 's', 'p',
'o', 'r', 't', '_', 's', 'e', 'c', 'u', 'r', 'i', 't', 'y', '_', 'c', 'o', 'm', 'm', 'o', 'n', '.', 'p', 'r', 'o', 't', 'o',
'\"', '\361', '\003', '\n', '\013', 'A', 'l', 't', 's', 'C', 'o', 'n', 't', 'e', 'x', 't', '\022', '1', '\n', '\024', 'a', 'p', 'p', 'l', 'i',
'c', 'a', 't', 'i', 'o', 'n', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\023', 'a', 'p',
'p', 'l', 'i', 'c', 'a', 't', 'i', 'o', 'n', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', '\'', '\n', '\017', 'r', 'e', 'c', 'o',
'r', 'd', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\016', 'r', 'e', 'c', 'o', 'r', 'd',
'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', '>', '\n', '\016', 's', 'e', 'c', 'u', 'r', 'i', 't', 'y', '_', 'l', 'e', 'v', 'e',
'l', '\030', '\003', ' ', '\001', '(', '\016', '2', '\027', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'S', 'e', 'c', 'u', 'r', 'i',
't', 'y', 'L', 'e', 'v', 'e', 'l', 'R', '\r', 's', 'e', 'c', 'u', 'r', 'i', 't', 'y', 'L', 'e', 'v', 'e', 'l', '\022', '0', '\n',
'\024', 'p', 'e', 'e', 'r', '_', 's', 'e', 'r', 'v', 'i', 'c', 'e', '_', 'a', 'c', 'c', 'o', 'u', 'n', 't', '\030', '\004', ' ', '\001',
'(', '\t', 'R', '\022', 'p', 'e', 'e', 'r', 'S', 'e', 'r', 'v', 'i', 'c', 'e', 'A', 'c', 'c', 'o', 'u', 'n', 't', '\022', '2', '\n',
'\025', 'l', 'o', 'c', 'a', 'l', '_', 's', 'e', 'r', 'v', 'i', 'c', 'e', '_', 'a', 'c', 'c', 'o', 'u', 'n', 't', '\030', '\005', ' ',
'\001', '(', '\t', 'R', '\023', 'l', 'o', 'c', 'a', 'l', 'S', 'e', 'r', 'v', 'i', 'c', 'e', 'A', 'c', 'c', 'o', 'u', 'n', 't', '\022',
'I', '\n', '\021', 'p', 'e', 'e', 'r', '_', 'r', 'p', 'c', '_', 'v', 'e', 'r', 's', 'i', 'o', 'n', 's', '\030', '\006', ' ', '\001', '(',
'\013', '2', '\035', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'R', 'p', 'c', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'V',
'e', 'r', 's', 'i', 'o', 'n', 's', 'R', '\017', 'p', 'e', 'e', 'r', 'R', 'p', 'c', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '\022',
'R', '\n', '\017', 'p', 'e', 'e', 'r', '_', 'a', 't', 't', 'r', 'i', 'b', 'u', 't', 'e', 's', '\030', '\007', ' ', '\003', '(', '\013', '2',
')', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'A', 'l', 't', 's', 'C', 'o', 'n', 't', 'e', 'x', 't', '.', 'P', 'e',
'e', 'r', 'A', 't', 't', 'r', 'i', 'b', 'u', 't', 'e', 's', 'E', 'n', 't', 'r', 'y', 'R', '\016', 'p', 'e', 'e', 'r', 'A', 't',
't', 'r', 'i', 'b', 'u', 't', 'e', 's', '\032', 'A', '\n', '\023', 'P', 'e', 'e', 'r', 'A', 't', 't', 'r', 'i', 'b', 'u', 't', 'e',
's', 'E', 'n', 't', 'r', 'y', '\022', '\020', '\n', '\003', 'k', 'e', 'y', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\003', 'k', 'e', 'y', '\022',
'\024', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\005', 'v', 'a', 'l', 'u', 'e', ':', '\002', '8', '\001',
'B', 'l', '\n', '\025', 'i', 'o', '.', 'g', 'r', 'p', 'c', '.', 'a', 'l', 't', 's', '.', 'i', 'n', 't', 'e', 'r', 'n', 'a', 'l',
'B', '\020', 'A', 'l', 't', 's', 'C', 'o', 'n', 't', 'e', 'x', 't', 'P', 'r', 'o', 't', 'o', 'P', '\001', 'Z', '?', 'g', 'o', 'o',
'g', 'l', 'e', '.', 'g', 'o', 'l', 'a', 'n', 'g', '.', 'o', 'r', 'g', '/', 'g', 'r', 'p', 'c', '/', 'c', 'r', 'e', 'd', 'e',
'n', 't', 'i', 'a', 'l', 's', '/', 'a', 'l', 't', 's', '/', 'i', 'n', 't', 'e', 'r', 'n', 'a', 'l', '/', 'p', 'r', 'o', 't',
'o', '/', 'g', 'r', 'p', 'c', '_', 'g', 'c', 'p', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[2] = {
&src_proto_grpc_gcp_transport_security_common_proto_upbdefinit,
NULL
};
upb_def_init src_proto_grpc_gcp_altscontext_proto_upbdefinit = {
deps,
&src_proto_grpc_gcp_altscontext_proto_upb_file_layout,
"src/proto/grpc/gcp/altscontext.proto",
UPB_STRVIEW_INIT(descriptor, 718)
};

@ -1,40 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/gcp/altscontext.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef SRC_PROTO_GRPC_GCP_ALTSCONTEXT_PROTO_UPBDEFS_H_
#define SRC_PROTO_GRPC_GCP_ALTSCONTEXT_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 src_proto_grpc_gcp_altscontext_proto_upbdefinit;
UPB_INLINE const upb_msgdef *grpc_gcp_AltsContext_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_altscontext_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.AltsContext");
}
UPB_INLINE const upb_msgdef *grpc_gcp_AltsContext_PeerAttributesEntry_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_altscontext_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.AltsContext.PeerAttributesEntry");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* SRC_PROTO_GRPC_GCP_ALTSCONTEXT_PROTO_UPBDEFS_H_ */

@ -1,149 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/gcp/handshaker.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "src/proto/grpc/gcp/handshaker.upbdefs.h"
#include "src/proto/grpc/gcp/handshaker.upb.h"
extern upb_def_init src_proto_grpc_gcp_transport_security_common_proto_upbdefinit;
static const char descriptor[3053] = {'\n', '#', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'g', 'c', 'p', '/', 'h', 'a', 'n', 'd',
's', 'h', 'a', 'k', 'e', 'r', '.', 'p', 'r', 'o', 't', 'o', '\022', '\010', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '\032', '2', 's',
'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'g', 'c', 'p', '/', 't', 'r', 'a', 'n', 's', 'p', 'o',
'r', 't', '_', 's', 'e', 'c', 'u', 'r', 'i', 't', 'y', '_', 'c', 'o', 'm', 'm', 'o', 'n', '.', 'p', 'r', 'o', 't', 'o', '\"',
't', '\n', '\010', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\022', '\035', '\n', '\n', 'i', 'p', '_', 'a', 'd', 'd', 'r', 'e', 's', 's',
'\030', '\001', ' ', '\001', '(', '\t', 'R', '\t', 'i', 'p', 'A', 'd', 'd', 'r', 'e', 's', 's', '\022', '\022', '\n', '\004', 'p', 'o', 'r', 't',
'\030', '\002', ' ', '\001', '(', '\005', 'R', '\004', 'p', 'o', 'r', 't', '\022', '5', '\n', '\010', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\030',
'\003', ' ', '\001', '(', '\016', '2', '\031', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'N', 'e', 't', 'w', 'o', 'r', 'k', 'P',
'r', 'o', 't', 'o', 'c', 'o', 'l', 'R', '\010', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\"', '\350', '\001', '\n', '\010', 'I', 'd', 'e',
'n', 't', 'i', 't', 'y', '\022', ')', '\n', '\017', 's', 'e', 'r', 'v', 'i', 'c', 'e', '_', 'a', 'c', 'c', 'o', 'u', 'n', 't', '\030',
'\001', ' ', '\001', '(', '\t', 'H', '\000', 'R', '\016', 's', 'e', 'r', 'v', 'i', 'c', 'e', 'A', 'c', 'c', 'o', 'u', 'n', 't', '\022', '\034',
'\n', '\010', 'h', 'o', 's', 't', 'n', 'a', 'm', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'H', '\000', 'R', '\010', 'h', 'o', 's', 't', 'n',
'a', 'm', 'e', '\022', 'B', '\n', '\n', 'a', 't', 't', 'r', 'i', 'b', 'u', 't', 'e', 's', '\030', '\003', ' ', '\003', '(', '\013', '2', '\"',
'.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'I', 'd', 'e', 'n', 't', 'i', 't', 'y', '.', 'A', 't', 't', 'r', 'i', 'b',
'u', 't', 'e', 's', 'E', 'n', 't', 'r', 'y', 'R', '\n', 'a', 't', 't', 'r', 'i', 'b', 'u', 't', 'e', 's', '\032', '=', '\n', '\017',
'A', 't', 't', 'r', 'i', 'b', 'u', 't', 'e', 's', 'E', 'n', 't', 'r', 'y', '\022', '\020', '\n', '\003', 'k', 'e', 'y', '\030', '\001', ' ',
'\001', '(', '\t', 'R', '\003', 'k', 'e', 'y', '\022', '\024', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\005',
'v', 'a', 'l', 'u', 'e', ':', '\002', '8', '\001', 'B', '\020', '\n', '\016', 'i', 'd', 'e', 'n', 't', 'i', 't', 'y', '_', 'o', 'n', 'e',
'o', 'f', '\"', '\323', '\004', '\n', '\027', 'S', 't', 'a', 'r', 't', 'C', 'l', 'i', 'e', 'n', 't', 'H', 'a', 'n', 'd', 's', 'h', 'a',
'k', 'e', 'R', 'e', 'q', '\022', '[', '\n', '\033', 'h', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', '_', 's', 'e', 'c', 'u', 'r', 'i',
't', 'y', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\030', '\001', ' ', '\001', '(', '\016', '2', '\033', '.', 'g', 'r', 'p', 'c', '.',
'g', 'c', 'p', '.', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'R', '\031', 'h', 'a',
'n', 'd', 's', 'h', 'a', 'k', 'e', 'S', 'e', 'c', 'u', 'r', 'i', 't', 'y', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', '3',
'\n', '\025', 'a', 'p', 'p', 'l', 'i', 'c', 'a', 't', 'i', 'o', 'n', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's', '\030', '\002',
' ', '\003', '(', '\t', 'R', '\024', 'a', 'p', 'p', 'l', 'i', 'c', 'a', 't', 'i', 'o', 'n', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l',
's', '\022', ')', '\n', '\020', 'r', 'e', 'c', 'o', 'r', 'd', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's', '\030', '\003', ' ', '\003',
'(', '\t', 'R', '\017', 'r', 'e', 'c', 'o', 'r', 'd', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's', '\022', '?', '\n', '\021', 't', 'a',
'r', 'g', 'e', 't', '_', 'i', 'd', 'e', 'n', 't', 'i', 't', 'i', 'e', 's', '\030', '\004', ' ', '\003', '(', '\013', '2', '\022', '.', 'g',
'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'I', 'd', 'e', 'n', 't', 'i', 't', 'y', 'R', '\020', 't', 'a', 'r', 'g', 'e', 't', 'I',
'd', 'e', 'n', 't', 'i', 't', 'i', 'e', 's', '\022', '9', '\n', '\016', 'l', 'o', 'c', 'a', 'l', '_', 'i', 'd', 'e', 'n', 't', 'i',
't', 'y', '\030', '\005', ' ', '\001', '(', '\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'I', 'd', 'e', 'n', 't',
'i', 't', 'y', 'R', '\r', 'l', 'o', 'c', 'a', 'l', 'I', 'd', 'e', 'n', 't', 'i', 't', 'y', '\022', '9', '\n', '\016', 'l', 'o', 'c',
'a', 'l', '_', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\030', '\006', ' ', '\001', '(', '\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.',
'g', 'c', 'p', '.', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'R', '\r', 'l', 'o', 'c', 'a', 'l', 'E', 'n', 'd', 'p', 'o', 'i',
'n', 't', '\022', ';', '\n', '\017', 'r', 'e', 'm', 'o', 't', 'e', '_', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\030', '\007', ' ', '\001',
'(', '\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'R', '\016', 'r',
'e', 'm', 'o', 't', 'e', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\022', '\037', '\n', '\013', 't', 'a', 'r', 'g', 'e', 't', '_', 'n',
'a', 'm', 'e', '\030', '\010', ' ', '\001', '(', '\t', 'R', '\n', 't', 'a', 'r', 'g', 'e', 't', 'N', 'a', 'm', 'e', '\022', '@', '\n', '\014',
'r', 'p', 'c', '_', 'v', 'e', 'r', 's', 'i', 'o', 'n', 's', '\030', '\t', ' ', '\001', '(', '\013', '2', '\035', '.', 'g', 'r', 'p', 'c',
'.', 'g', 'c', 'p', '.', 'R', 'p', 'c', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', 'R',
'\013', 'r', 'p', 'c', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '\022', '$', '\n', '\016', 'm', 'a', 'x', '_', 'f', 'r', 'a', 'm', 'e',
'_', 's', 'i', 'z', 'e', '\030', '\n', ' ', '\001', '(', '\r', 'R', '\014', 'm', 'a', 'x', 'F', 'r', 'a', 'm', 'e', 'S', 'i', 'z', 'e',
'\"', '\205', '\001', '\n', '\031', 'S', 'e', 'r', 'v', 'e', 'r', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'a', 'r', 'a', 'm',
'e', 't', 'e', 'r', 's', '\022', ')', '\n', '\020', 'r', 'e', 'c', 'o', 'r', 'd', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's',
'\030', '\001', ' ', '\003', '(', '\t', 'R', '\017', 'r', 'e', 'c', 'o', 'r', 'd', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's', '\022', '=',
'\n', '\020', 'l', 'o', 'c', 'a', 'l', '_', 'i', 'd', 'e', 'n', 't', 'i', 't', 'i', 'e', 's', '\030', '\002', ' ', '\003', '(', '\013', '2',
'\022', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'I', 'd', 'e', 'n', 't', 'i', 't', 'y', 'R', '\017', 'l', 'o', 'c', 'a',
'l', 'I', 'd', 'e', 'n', 't', 'i', 't', 'i', 'e', 's', '\"', '\245', '\004', '\n', '\027', 'S', 't', 'a', 'r', 't', 'S', 'e', 'r', 'v',
'e', 'r', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'R', 'e', 'q', '\022', '3', '\n', '\025', 'a', 'p', 'p', 'l', 'i', 'c', 'a',
't', 'i', 'o', 'n', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's', '\030', '\001', ' ', '\003', '(', '\t', 'R', '\024', 'a', 'p', 'p',
'l', 'i', 'c', 'a', 't', 'i', 'o', 'n', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 's', '\022', 'm', '\n', '\024', 'h', 'a', 'n', 'd',
's', 'h', 'a', 'k', 'e', '_', 'p', 'a', 'r', 'a', 'm', 'e', 't', 'e', 'r', 's', '\030', '\002', ' ', '\003', '(', '\013', '2', ':', '.',
'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'S', 't', 'a', 'r', 't', 'S', 'e', 'r', 'v', 'e', 'r', 'H', 'a', 'n', 'd', 's',
'h', 'a', 'k', 'e', 'R', 'e', 'q', '.', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'a', 'r', 'a', 'm', 'e', 't', 'e',
'r', 's', 'E', 'n', 't', 'r', 'y', 'R', '\023', 'h', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'a', 'r', 'a', 'm', 'e', 't',
'e', 'r', 's', '\022', '\031', '\n', '\010', 'i', 'n', '_', 'b', 'y', 't', 'e', 's', '\030', '\003', ' ', '\001', '(', '\014', 'R', '\007', 'i', 'n',
'B', 'y', 't', 'e', 's', '\022', '9', '\n', '\016', 'l', 'o', 'c', 'a', 'l', '_', 'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\030', '\004',
' ', '\001', '(', '\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'R',
'\r', 'l', 'o', 'c', 'a', 'l', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\022', ';', '\n', '\017', 'r', 'e', 'm', 'o', 't', 'e', '_',
'e', 'n', 'd', 'p', 'o', 'i', 'n', 't', '\030', '\005', ' ', '\001', '(', '\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p',
'.', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't', 'R', '\016', 'r', 'e', 'm', 'o', 't', 'e', 'E', 'n', 'd', 'p', 'o', 'i', 'n', 't',
'\022', '@', '\n', '\014', 'r', 'p', 'c', '_', 'v', 'e', 'r', 's', 'i', 'o', 'n', 's', '\030', '\006', ' ', '\001', '(', '\013', '2', '\035', '.',
'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'R', 'p', 'c', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'V', 'e', 'r', 's', 'i',
'o', 'n', 's', 'R', '\013', 'r', 'p', 'c', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '\022', '$', '\n', '\016', 'm', 'a', 'x', '_', 'f',
'r', 'a', 'm', 'e', '_', 's', 'i', 'z', 'e', '\030', '\007', ' ', '\001', '(', '\r', 'R', '\014', 'm', 'a', 'x', 'F', 'r', 'a', 'm', 'e',
'S', 'i', 'z', 'e', '\032', 'k', '\n', '\030', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'a', 'r', 'a', 'm', 'e', 't', 'e',
'r', 's', 'E', 'n', 't', 'r', 'y', '\022', '\020', '\n', '\003', 'k', 'e', 'y', '\030', '\001', ' ', '\001', '(', '\005', 'R', '\003', 'k', 'e', 'y',
'\022', '9', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\002', ' ', '\001', '(', '\013', '2', '#', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c',
'p', '.', 'S', 'e', 'r', 'v', 'e', 'r', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'a', 'r', 'a', 'm', 'e', 't', 'e',
'r', 's', 'R', '\005', 'v', 'a', 'l', 'u', 'e', ':', '\002', '8', '\001', '\"', '4', '\n', '\027', 'N', 'e', 'x', 't', 'H', 'a', 'n', 'd',
's', 'h', 'a', 'k', 'e', 'M', 'e', 's', 's', 'a', 'g', 'e', 'R', 'e', 'q', '\022', '\031', '\n', '\010', 'i', 'n', '_', 'b', 'y', 't',
'e', 's', '\030', '\001', ' ', '\001', '(', '\014', 'R', '\007', 'i', 'n', 'B', 'y', 't', 'e', 's', '\"', '\345', '\001', '\n', '\r', 'H', 'a', 'n',
'd', 's', 'h', 'a', 'k', 'e', 'r', 'R', 'e', 'q', '\022', 'F', '\n', '\014', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a', 'r',
't', '\030', '\001', ' ', '\001', '(', '\013', '2', '!', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'S', 't', 'a', 'r', 't', 'C',
'l', 'i', 'e', 'n', 't', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'R', 'e', 'q', 'H', '\000', 'R', '\013', 'c', 'l', 'i', 'e',
'n', 't', 'S', 't', 'a', 'r', 't', '\022', 'F', '\n', '\014', 's', 'e', 'r', 'v', 'e', 'r', '_', 's', 't', 'a', 'r', 't', '\030', '\002',
' ', '\001', '(', '\013', '2', '!', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'S', 't', 'a', 'r', 't', 'S', 'e', 'r', 'v',
'e', 'r', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'R', 'e', 'q', 'H', '\000', 'R', '\013', 's', 'e', 'r', 'v', 'e', 'r', 'S',
't', 'a', 'r', 't', '\022', '7', '\n', '\004', 'n', 'e', 'x', 't', '\030', '\003', ' ', '\001', '(', '\013', '2', '!', '.', 'g', 'r', 'p', 'c',
'.', 'g', 'c', 'p', '.', 'N', 'e', 'x', 't', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'M', 'e', 's', 's', 'a', 'g', 'e',
'R', 'e', 'q', 'H', '\000', 'R', '\004', 'n', 'e', 'x', 't', 'B', '\013', '\n', '\t', 'r', 'e', 'q', '_', 'o', 'n', 'e', 'o', 'f', '\"',
'\232', '\003', '\n', '\020', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'r', 'R', 'e', 's', 'u', 'l', 't', '\022', '1', '\n', '\024', 'a',
'p', 'p', 'l', 'i', 'c', 'a', 't', 'i', 'o', 'n', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\030', '\001', ' ', '\001', '(', '\t',
'R', '\023', 'a', 'p', 'p', 'l', 'i', 'c', 'a', 't', 'i', 'o', 'n', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', '\'', '\n', '\017',
'r', 'e', 'c', 'o', 'r', 'd', '_', 'p', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\016', 'r', 'e',
'c', 'o', 'r', 'd', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', '\031', '\n', '\010', 'k', 'e', 'y', '_', 'd', 'a', 't', 'a', '\030',
'\003', ' ', '\001', '(', '\014', 'R', '\007', 'k', 'e', 'y', 'D', 'a', 't', 'a', '\022', '7', '\n', '\r', 'p', 'e', 'e', 'r', '_', 'i', 'd',
'e', 'n', 't', 'i', 't', 'y', '\030', '\004', ' ', '\001', '(', '\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'I',
'd', 'e', 'n', 't', 'i', 't', 'y', 'R', '\014', 'p', 'e', 'e', 'r', 'I', 'd', 'e', 'n', 't', 'i', 't', 'y', '\022', '9', '\n', '\016',
'l', 'o', 'c', 'a', 'l', '_', 'i', 'd', 'e', 'n', 't', 'i', 't', 'y', '\030', '\005', ' ', '\001', '(', '\013', '2', '\022', '.', 'g', 'r',
'p', 'c', '.', 'g', 'c', 'p', '.', 'I', 'd', 'e', 'n', 't', 'i', 't', 'y', 'R', '\r', 'l', 'o', 'c', 'a', 'l', 'I', 'd', 'e',
'n', 't', 'i', 't', 'y', '\022', '*', '\n', '\021', 'k', 'e', 'e', 'p', '_', 'c', 'h', 'a', 'n', 'n', 'e', 'l', '_', 'o', 'p', 'e',
'n', '\030', '\006', ' ', '\001', '(', '\010', 'R', '\017', 'k', 'e', 'e', 'p', 'C', 'h', 'a', 'n', 'n', 'e', 'l', 'O', 'p', 'e', 'n', '\022',
'I', '\n', '\021', 'p', 'e', 'e', 'r', '_', 'r', 'p', 'c', '_', 'v', 'e', 'r', 's', 'i', 'o', 'n', 's', '\030', '\007', ' ', '\001', '(',
'\013', '2', '\035', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'R', 'p', 'c', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'V',
'e', 'r', 's', 'i', 'o', 'n', 's', 'R', '\017', 'p', 'e', 'e', 'r', 'R', 'p', 'c', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '\022',
'$', '\n', '\016', 'm', 'a', 'x', '_', 'f', 'r', 'a', 'm', 'e', '_', 's', 'i', 'z', 'e', '\030', '\010', ' ', '\001', '(', '\r', 'R', '\014',
'm', 'a', 'x', 'F', 'r', 'a', 'm', 'e', 'S', 'i', 'z', 'e', '\"', '@', '\n', '\020', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e',
'r', 'S', 't', 'a', 't', 'u', 's', '\022', '\022', '\n', '\004', 'c', 'o', 'd', 'e', '\030', '\001', ' ', '\001', '(', '\r', 'R', '\004', 'c', 'o',
'd', 'e', '\022', '\030', '\n', '\007', 'd', 'e', 't', 'a', 'i', 'l', 's', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\007', 'd', 'e', 't', 'a',
'i', 'l', 's', '\"', '\276', '\001', '\n', '\016', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'r', 'R', 'e', 's', 'p', '\022', '\035', '\n',
'\n', 'o', 'u', 't', '_', 'f', 'r', 'a', 'm', 'e', 's', '\030', '\001', ' ', '\001', '(', '\014', 'R', '\t', 'o', 'u', 't', 'F', 'r', 'a',
'm', 'e', 's', '\022', '%', '\n', '\016', 'b', 'y', 't', 'e', 's', '_', 'c', 'o', 'n', 's', 'u', 'm', 'e', 'd', '\030', '\002', ' ', '\001',
'(', '\r', 'R', '\r', 'b', 'y', 't', 'e', 's', 'C', 'o', 'n', 's', 'u', 'm', 'e', 'd', '\022', '2', '\n', '\006', 'r', 'e', 's', 'u',
'l', 't', '\030', '\003', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'H', 'a', 'n', 'd', 's',
'h', 'a', 'k', 'e', 'r', 'R', 'e', 's', 'u', 'l', 't', 'R', '\006', 'r', 'e', 's', 'u', 'l', 't', '\022', '2', '\n', '\006', 's', 't',
'a', 't', 'u', 's', '\030', '\004', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'H', 'a', 'n',
'd', 's', 'h', 'a', 'k', 'e', 'r', 'S', 't', 'a', 't', 'u', 's', 'R', '\006', 's', 't', 'a', 't', 'u', 's', '*', 'J', '\n', '\021',
'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', '\"', '\n', '\036', 'H', 'A', 'N', 'D',
'S', 'H', 'A', 'K', 'E', '_', 'P', 'R', 'O', 'T', 'O', 'C', 'O', 'L', '_', 'U', 'N', 'S', 'P', 'E', 'C', 'I', 'F', 'I', 'E',
'D', '\020', '\000', '\022', '\007', '\n', '\003', 'T', 'L', 'S', '\020', '\001', '\022', '\010', '\n', '\004', 'A', 'L', 'T', 'S', '\020', '\002', '*', 'E', '\n',
'\017', 'N', 'e', 't', 'w', 'o', 'r', 'k', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', '\022', ' ', '\n', '\034', 'N', 'E', 'T', 'W', 'O',
'R', 'K', '_', 'P', 'R', 'O', 'T', 'O', 'C', 'O', 'L', '_', 'U', 'N', 'S', 'P', 'E', 'C', 'I', 'F', 'I', 'E', 'D', '\020', '\000',
'\022', '\007', '\n', '\003', 'T', 'C', 'P', '\020', '\001', '\022', '\007', '\n', '\003', 'U', 'D', 'P', '\020', '\002', '2', '[', '\n', '\021', 'H', 'a', 'n',
'd', 's', 'h', 'a', 'k', 'e', 'r', 'S', 'e', 'r', 'v', 'i', 'c', 'e', '\022', 'F', '\n', '\013', 'D', 'o', 'H', 'a', 'n', 'd', 's',
'h', 'a', 'k', 'e', '\022', '\027', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e',
'r', 'R', 'e', 'q', '\032', '\030', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e',
'r', 'R', 'e', 's', 'p', '\"', '\000', '(', '\001', '0', '\001', 'B', 'k', '\n', '\025', 'i', 'o', '.', 'g', 'r', 'p', 'c', '.', 'a', 'l',
't', 's', '.', 'i', 'n', 't', 'e', 'r', 'n', 'a', 'l', 'B', '\017', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e', 'r', 'P', 'r',
'o', 't', 'o', 'P', '\001', 'Z', '?', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'g', 'o', 'l', 'a', 'n', 'g', '.', 'o', 'r', 'g', '/',
'g', 'r', 'p', 'c', '/', 'c', 'r', 'e', 'd', 'e', 'n', 't', 'i', 'a', 'l', 's', '/', 'a', 'l', 't', 's', '/', 'i', 'n', 't',
'e', 'r', 'n', 'a', 'l', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '_', 'g', 'c', 'p', 'b', '\006', 'p', 'r', 'o',
't', 'o', '3',
};
static upb_def_init *deps[2] = {
&src_proto_grpc_gcp_transport_security_common_proto_upbdefinit,
NULL
};
upb_def_init src_proto_grpc_gcp_handshaker_proto_upbdefinit = {
deps,
&src_proto_grpc_gcp_handshaker_proto_upb_file_layout,
"src/proto/grpc/gcp/handshaker.proto",
UPB_STRVIEW_INIT(descriptor, 3053)
};

@ -1,90 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/gcp/handshaker.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef SRC_PROTO_GRPC_GCP_HANDSHAKER_PROTO_UPBDEFS_H_
#define SRC_PROTO_GRPC_GCP_HANDSHAKER_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 src_proto_grpc_gcp_handshaker_proto_upbdefinit;
UPB_INLINE const upb_msgdef *grpc_gcp_Endpoint_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.Endpoint");
}
UPB_INLINE const upb_msgdef *grpc_gcp_Identity_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.Identity");
}
UPB_INLINE const upb_msgdef *grpc_gcp_Identity_AttributesEntry_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.Identity.AttributesEntry");
}
UPB_INLINE const upb_msgdef *grpc_gcp_StartClientHandshakeReq_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.StartClientHandshakeReq");
}
UPB_INLINE const upb_msgdef *grpc_gcp_ServerHandshakeParameters_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.ServerHandshakeParameters");
}
UPB_INLINE const upb_msgdef *grpc_gcp_StartServerHandshakeReq_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.StartServerHandshakeReq");
}
UPB_INLINE const upb_msgdef *grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry");
}
UPB_INLINE const upb_msgdef *grpc_gcp_NextHandshakeMessageReq_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.NextHandshakeMessageReq");
}
UPB_INLINE const upb_msgdef *grpc_gcp_HandshakerReq_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.HandshakerReq");
}
UPB_INLINE const upb_msgdef *grpc_gcp_HandshakerResult_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.HandshakerResult");
}
UPB_INLINE const upb_msgdef *grpc_gcp_HandshakerStatus_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.HandshakerStatus");
}
UPB_INLINE const upb_msgdef *grpc_gcp_HandshakerResp_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_handshaker_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.HandshakerResp");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* SRC_PROTO_GRPC_GCP_HANDSHAKER_PROTO_UPBDEFS_H_ */

@ -1,45 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/gcp/transport_security_common.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "src/proto/grpc/gcp/transport_security_common.upbdefs.h"
#include "src/proto/grpc/gcp/transport_security_common.upb.h"
static const char descriptor[512] = {'\n', '2', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'g', 'c', 'p', '/', 't', 'r', 'a', 'n',
's', 'p', 'o', 'r', 't', '_', 's', 'e', 'c', 'u', 'r', 'i', 't', 'y', '_', 'c', 'o', 'm', 'm', 'o', 'n', '.', 'p', 'r', 'o',
't', 'o', '\022', '\010', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '\"', '\352', '\001', '\n', '\023', 'R', 'p', 'c', 'P', 'r', 'o', 't', 'o',
'c', 'o', 'l', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '\022', 'M', '\n', '\017', 'm', 'a', 'x', '_', 'r', 'p', 'c', '_', 'v', 'e',
'r', 's', 'i', 'o', 'n', '\030', '\001', ' ', '\001', '(', '\013', '2', '%', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c', 'p', '.', 'R', 'p',
'c', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '.', 'V', 'e', 'r', 's', 'i', 'o', 'n',
'R', '\r', 'm', 'a', 'x', 'R', 'p', 'c', 'V', 'e', 'r', 's', 'i', 'o', 'n', '\022', 'M', '\n', '\017', 'm', 'i', 'n', '_', 'r', 'p',
'c', '_', 'v', 'e', 'r', 's', 'i', 'o', 'n', '\030', '\002', ' ', '\001', '(', '\013', '2', '%', '.', 'g', 'r', 'p', 'c', '.', 'g', 'c',
'p', '.', 'R', 'p', 'c', 'P', 'r', 'o', 't', 'o', 'c', 'o', 'l', 'V', 'e', 'r', 's', 'i', 'o', 'n', 's', '.', 'V', 'e', 'r',
's', 'i', 'o', 'n', 'R', '\r', 'm', 'i', 'n', 'R', 'p', 'c', 'V', 'e', 'r', 's', 'i', 'o', 'n', '\032', '5', '\n', '\007', 'V', 'e',
'r', 's', 'i', 'o', 'n', '\022', '\024', '\n', '\005', 'm', 'a', 'j', 'o', 'r', '\030', '\001', ' ', '\001', '(', '\r', 'R', '\005', 'm', 'a', 'j',
'o', 'r', '\022', '\024', '\n', '\005', 'm', 'i', 'n', 'o', 'r', '\030', '\002', ' ', '\001', '(', '\r', 'R', '\005', 'm', 'i', 'n', 'o', 'r', '*',
'Q', '\n', '\r', 'S', 'e', 'c', 'u', 'r', 'i', 't', 'y', 'L', 'e', 'v', 'e', 'l', '\022', '\021', '\n', '\r', 'S', 'E', 'C', 'U', 'R',
'I', 'T', 'Y', '_', 'N', 'O', 'N', 'E', '\020', '\000', '\022', '\022', '\n', '\016', 'I', 'N', 'T', 'E', 'G', 'R', 'I', 'T', 'Y', '_', 'O',
'N', 'L', 'Y', '\020', '\001', '\022', '\031', '\n', '\025', 'I', 'N', 'T', 'E', 'G', 'R', 'I', 'T', 'Y', '_', 'A', 'N', 'D', '_', 'P', 'R',
'I', 'V', 'A', 'C', 'Y', '\020', '\002', 'B', 'x', '\n', '\025', 'i', 'o', '.', 'g', 'r', 'p', 'c', '.', 'a', 'l', 't', 's', '.', 'i',
'n', 't', 'e', 'r', 'n', 'a', 'l', 'B', '\034', 'T', 'r', 'a', 'n', 's', 'p', 'o', 'r', 't', 'S', 'e', 'c', 'u', 'r', 'i', 't',
'y', 'C', 'o', 'm', 'm', 'o', 'n', 'P', 'r', 'o', 't', 'o', 'P', '\001', 'Z', '?', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'g', 'o',
'l', 'a', 'n', 'g', '.', 'o', 'r', 'g', '/', 'g', 'r', 'p', 'c', '/', 'c', 'r', 'e', 'd', 'e', 'n', 't', 'i', 'a', 'l', 's',
'/', 'a', 'l', 't', 's', '/', 'i', 'n', 't', 'e', 'r', 'n', 'a', 'l', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c',
'_', 'g', 'c', 'p', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[1] = {
NULL
};
upb_def_init src_proto_grpc_gcp_transport_security_common_proto_upbdefinit = {
deps,
&src_proto_grpc_gcp_transport_security_common_proto_upb_file_layout,
"src/proto/grpc/gcp/transport_security_common.proto",
UPB_STRVIEW_INIT(descriptor, 512)
};

@ -1,40 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/gcp/transport_security_common.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef SRC_PROTO_GRPC_GCP_TRANSPORT_SECURITY_COMMON_PROTO_UPBDEFS_H_
#define SRC_PROTO_GRPC_GCP_TRANSPORT_SECURITY_COMMON_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 src_proto_grpc_gcp_transport_security_common_proto_upbdefinit;
UPB_INLINE const upb_msgdef *grpc_gcp_RpcProtocolVersions_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_transport_security_common_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.RpcProtocolVersions");
}
UPB_INLINE const upb_msgdef *grpc_gcp_RpcProtocolVersions_Version_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_gcp_transport_security_common_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.gcp.RpcProtocolVersions.Version");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* SRC_PROTO_GRPC_GCP_TRANSPORT_SECURITY_COMMON_PROTO_UPBDEFS_H_ */

@ -1,47 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/health/v1/health.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "src/proto/grpc/health/v1/health.upbdefs.h"
#include "src/proto/grpc/health/v1/health.upb.h"
static const char descriptor[567] = {'\n', '%', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'h', 'e', 'a', 'l', 't', 'h', '/', 'v',
'1', '/', 'h', 'e', 'a', 'l', 't', 'h', '.', 'p', 'r', 'o', 't', 'o', '\022', '\016', 'g', 'r', 'p', 'c', '.', 'h', 'e', 'a', 'l',
't', 'h', '.', 'v', '1', '\"', '.', '\n', '\022', 'H', 'e', 'a', 'l', 't', 'h', 'C', 'h', 'e', 'c', 'k', 'R', 'e', 'q', 'u', 'e',
's', 't', '\022', '\030', '\n', '\007', 's', 'e', 'r', 'v', 'i', 'c', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\007', 's', 'e', 'r', 'v',
'i', 'c', 'e', '\"', '\261', '\001', '\n', '\023', 'H', 'e', 'a', 'l', 't', 'h', 'C', 'h', 'e', 'c', 'k', 'R', 'e', 's', 'p', 'o', 'n',
's', 'e', '\022', 'I', '\n', '\006', 's', 't', 'a', 't', 'u', 's', '\030', '\001', ' ', '\001', '(', '\016', '2', '1', '.', 'g', 'r', 'p', 'c',
'.', 'h', 'e', 'a', 'l', 't', 'h', '.', 'v', '1', '.', 'H', 'e', 'a', 'l', 't', 'h', 'C', 'h', 'e', 'c', 'k', 'R', 'e', 's',
'p', 'o', 'n', 's', 'e', '.', 'S', 'e', 'r', 'v', 'i', 'n', 'g', 'S', 't', 'a', 't', 'u', 's', 'R', '\006', 's', 't', 'a', 't',
'u', 's', '\"', 'O', '\n', '\r', 'S', 'e', 'r', 'v', 'i', 'n', 'g', 'S', 't', 'a', 't', 'u', 's', '\022', '\013', '\n', '\007', 'U', 'N',
'K', 'N', 'O', 'W', 'N', '\020', '\000', '\022', '\013', '\n', '\007', 'S', 'E', 'R', 'V', 'I', 'N', 'G', '\020', '\001', '\022', '\017', '\n', '\013', 'N',
'O', 'T', '_', 'S', 'E', 'R', 'V', 'I', 'N', 'G', '\020', '\002', '\022', '\023', '\n', '\017', 'S', 'E', 'R', 'V', 'I', 'C', 'E', '_', 'U',
'N', 'K', 'N', 'O', 'W', 'N', '\020', '\003', '2', '\256', '\001', '\n', '\006', 'H', 'e', 'a', 'l', 't', 'h', '\022', 'P', '\n', '\005', 'C', 'h',
'e', 'c', 'k', '\022', '\"', '.', 'g', 'r', 'p', 'c', '.', 'h', 'e', 'a', 'l', 't', 'h', '.', 'v', '1', '.', 'H', 'e', 'a', 'l',
't', 'h', 'C', 'h', 'e', 'c', 'k', 'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '#', '.', 'g', 'r', 'p', 'c', '.', 'h', 'e', 'a',
'l', 't', 'h', '.', 'v', '1', '.', 'H', 'e', 'a', 'l', 't', 'h', 'C', 'h', 'e', 'c', 'k', 'R', 'e', 's', 'p', 'o', 'n', 's',
'e', '\022', 'R', '\n', '\005', 'W', 'a', 't', 'c', 'h', '\022', '\"', '.', 'g', 'r', 'p', 'c', '.', 'h', 'e', 'a', 'l', 't', 'h', '.',
'v', '1', '.', 'H', 'e', 'a', 'l', 't', 'h', 'C', 'h', 'e', 'c', 'k', 'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '#', '.', 'g',
'r', 'p', 'c', '.', 'h', 'e', 'a', 'l', 't', 'h', '.', 'v', '1', '.', 'H', 'e', 'a', 'l', 't', 'h', 'C', 'h', 'e', 'c', 'k',
'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '0', '\001', 'B', 'a', '\n', '\021', 'i', 'o', '.', 'g', 'r', 'p', 'c', '.', 'h', 'e', 'a',
'l', 't', 'h', '.', 'v', '1', 'B', '\013', 'H', 'e', 'a', 'l', 't', 'h', 'P', 'r', 'o', 't', 'o', 'P', '\001', 'Z', ',', 'g', 'o',
'o', 'g', 'l', 'e', '.', 'g', 'o', 'l', 'a', 'n', 'g', '.', 'o', 'r', 'g', '/', 'g', 'r', 'p', 'c', '/', 'h', 'e', 'a', 'l',
't', 'h', '/', 'g', 'r', 'p', 'c', '_', 'h', 'e', 'a', 'l', 't', 'h', '_', 'v', '1', '\252', '\002', '\016', 'G', 'r', 'p', 'c', '.',
'H', 'e', 'a', 'l', 't', 'h', '.', 'V', '1', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[1] = {
NULL
};
upb_def_init src_proto_grpc_health_v1_health_proto_upbdefinit = {
deps,
&src_proto_grpc_health_v1_health_proto_upb_file_layout,
"src/proto/grpc/health/v1/health.proto",
UPB_STRVIEW_INIT(descriptor, 567)
};

@ -1,40 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/health/v1/health.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef SRC_PROTO_GRPC_HEALTH_V1_HEALTH_PROTO_UPBDEFS_H_
#define SRC_PROTO_GRPC_HEALTH_V1_HEALTH_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 src_proto_grpc_health_v1_health_proto_upbdefinit;
UPB_INLINE const upb_msgdef *grpc_health_v1_HealthCheckRequest_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_health_v1_health_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.health.v1.HealthCheckRequest");
}
UPB_INLINE const upb_msgdef *grpc_health_v1_HealthCheckResponse_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_health_v1_health_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.health.v1.HealthCheckResponse");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* SRC_PROTO_GRPC_HEALTH_V1_HEALTH_PROTO_UPBDEFS_H_ */

@ -1,97 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/lb/v1/load_balancer.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "src/proto/grpc/lb/v1/load_balancer.upbdefs.h"
#include "src/proto/grpc/lb/v1/load_balancer.upb.h"
extern upb_def_init google_protobuf_duration_proto_upbdefinit;
extern upb_def_init google_protobuf_timestamp_proto_upbdefinit;
static const char descriptor[1717] = {'\n', '(', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'l', 'b', '/', 'v', '1', '/', 'l', 'o',
'a', 'd', '_', 'b', 'a', 'l', 'a', 'n', 'c', 'e', 'r', '.', 'p', 'r', 'o', 't', 'o', '\022', '\n', 'g', 'r', 'p', 'c', '.', 'l',
'b', '.', 'v', '1', '\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', '\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', '\"', '\301', '\001', '\n', '\022', 'L',
'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'R', 'e', 'q', 'u', 'e', 's', 't', '\022', 'P', '\n', '\017', 'i', 'n', 'i', 't',
'i', 'a', 'l', '_', 'r', 'e', 'q', 'u', 'e', 's', 't', '\030', '\001', ' ', '\001', '(', '\013', '2', '%', '.', 'g', 'r', 'p', 'c', '.',
'l', 'b', '.', 'v', '1', '.', 'I', 'n', 'i', 't', 'i', 'a', 'l', 'L', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'R',
'e', 'q', 'u', 'e', 's', 't', 'H', '\000', 'R', '\016', 'i', 'n', 'i', 't', 'i', 'a', 'l', 'R', 'e', 'q', 'u', 'e', 's', 't', '\022',
'<', '\n', '\014', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a', 't', 's', '\030', '\002', ' ', '\001', '(', '\013', '2', '\027', '.', 'g',
'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 's', 'H', '\000', 'R', '\013',
'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 's', 'B', '\033', '\n', '\031', 'l', 'o', 'a', 'd', '_', 'b', 'a', 'l', 'a', 'n',
'c', 'e', '_', 'r', 'e', 'q', 'u', 'e', 's', 't', '_', 't', 'y', 'p', 'e', '\"', '/', '\n', '\031', 'I', 'n', 'i', 't', 'i', 'a',
'l', 'L', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'R', 'e', 'q', 'u', 'e', 's', 't', '\022', '\022', '\n', '\004', 'n', 'a',
'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\004', 'n', 'a', 'm', 'e', '\"', '`', '\n', '\023', 'C', 'l', 'i', 'e', 'n', 't', 'S',
't', 'a', 't', 's', 'P', 'e', 'r', 'T', 'o', 'k', 'e', 'n', '\022', ',', '\n', '\022', 'l', 'o', 'a', 'd', '_', 'b', 'a', 'l', 'a',
'n', 'c', 'e', '_', 't', 'o', 'k', 'e', 'n', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\020', 'l', 'o', 'a', 'd', 'B', 'a', 'l', 'a',
'n', 'c', 'e', 'T', 'o', 'k', 'e', 'n', '\022', '\033', '\n', '\t', 'n', 'u', 'm', '_', 'c', 'a', 'l', 'l', 's', '\030', '\002', ' ', '\001',
'(', '\003', 'R', '\010', 'n', 'u', 'm', 'C', 'a', 'l', 'l', 's', '\"', '\260', '\003', '\n', '\013', 'C', 'l', 'i', 'e', 'n', 't', 'S', 't',
'a', 't', 's', '\022', '8', '\n', '\t', 't', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', '\030', '\001', ' ', '\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', '\t', 't', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', '\022', '*', '\n', '\021', 'n', 'u', 'm', '_', 'c', 'a', 'l', 'l', 's', '_',
's', 't', 'a', 'r', 't', 'e', 'd', '\030', '\002', ' ', '\001', '(', '\003', 'R', '\017', 'n', 'u', 'm', 'C', 'a', 'l', 'l', 's', 'S', 't',
'a', 'r', 't', 'e', 'd', '\022', ',', '\n', '\022', 'n', 'u', 'm', '_', 'c', 'a', 'l', 'l', 's', '_', 'f', 'i', 'n', 'i', 's', 'h',
'e', 'd', '\030', '\003', ' ', '\001', '(', '\003', 'R', '\020', 'n', 'u', 'm', 'C', 'a', 'l', 'l', 's', 'F', 'i', 'n', 'i', 's', 'h', 'e',
'd', '\022', ']', '\n', '-', 'n', 'u', 'm', '_', 'c', 'a', 'l', 'l', 's', '_', 'f', 'i', 'n', 'i', 's', 'h', 'e', 'd', '_', 'w',
'i', 't', 'h', '_', 'c', 'l', 'i', 'e', 'n', 't', '_', 'f', 'a', 'i', 'l', 'e', 'd', '_', 't', 'o', '_', 's', 'e', 'n', 'd',
'\030', '\006', ' ', '\001', '(', '\003', 'R', '&', 'n', 'u', 'm', 'C', 'a', 'l', 'l', 's', 'F', 'i', 'n', 'i', 's', 'h', 'e', 'd', 'W',
'i', 't', 'h', 'C', 'l', 'i', 'e', 'n', 't', 'F', 'a', 'i', 'l', 'e', 'd', 'T', 'o', 'S', 'e', 'n', 'd', '\022', 'H', '\n', '!',
'n', 'u', 'm', '_', 'c', 'a', 'l', 'l', 's', '_', 'f', 'i', 'n', 'i', 's', 'h', 'e', 'd', '_', 'k', 'n', 'o', 'w', 'n', '_',
'r', 'e', 'c', 'e', 'i', 'v', 'e', 'd', '\030', '\007', ' ', '\001', '(', '\003', 'R', '\035', 'n', 'u', 'm', 'C', 'a', 'l', 'l', 's', 'F',
'i', 'n', 'i', 's', 'h', 'e', 'd', 'K', 'n', 'o', 'w', 'n', 'R', 'e', 'c', 'e', 'i', 'v', 'e', 'd', '\022', 'X', '\n', '\030', 'c',
'a', 'l', 'l', 's', '_', 'f', 'i', 'n', 'i', 's', 'h', 'e', 'd', '_', 'w', 'i', 't', 'h', '_', 'd', 'r', 'o', 'p', '\030', '\010',
' ', '\003', '(', '\013', '2', '\037', '.', 'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'C', 'l', 'i', 'e', 'n', 't', 'S',
't', 'a', 't', 's', 'P', 'e', 'r', 'T', 'o', 'k', 'e', 'n', 'R', '\025', 'c', 'a', 'l', 'l', 's', 'F', 'i', 'n', 'i', 's', 'h',
'e', 'd', 'W', 'i', 't', 'h', 'D', 'r', 'o', 'p', 'J', '\004', '\010', '\004', '\020', '\005', 'J', '\004', '\010', '\005', '\020', '\006', '\"', '\220', '\002',
'\n', '\023', 'L', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\022', 'S', '\n', '\020',
'i', 'n', 'i', 't', 'i', 'a', 'l', '_', 'r', 'e', 's', 'p', 'o', 'n', 's', 'e', '\030', '\001', ' ', '\001', '(', '\013', '2', '&', '.',
'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'I', 'n', 'i', 't', 'i', 'a', 'l', 'L', 'o', 'a', 'd', 'B', 'a', 'l',
'a', 'n', 'c', 'e', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', 'H', '\000', 'R', '\017', 'i', 'n', 'i', 't', 'i', 'a', 'l', 'R', 'e',
's', 'p', 'o', 'n', 's', 'e', '\022', '9', '\n', '\013', 's', 'e', 'r', 'v', 'e', 'r', '_', 'l', 'i', 's', 't', '\030', '\002', ' ', '\001',
'(', '\013', '2', '\026', '.', 'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'S', 'e', 'r', 'v', 'e', 'r', 'L', 'i', 's',
't', 'H', '\000', 'R', '\n', 's', 'e', 'r', 'v', 'e', 'r', 'L', 'i', 's', 't', '\022', 'K', '\n', '\021', 'f', 'a', 'l', 'l', 'b', 'a',
'c', 'k', '_', 'r', 'e', 's', 'p', 'o', 'n', 's', 'e', '\030', '\003', ' ', '\001', '(', '\013', '2', '\034', '.', 'g', 'r', 'p', 'c', '.',
'l', 'b', '.', 'v', '1', '.', 'F', 'a', 'l', 'l', 'b', 'a', 'c', 'k', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', 'H', '\000', 'R',
'\020', 'f', 'a', 'l', 'l', 'b', 'a', 'c', 'k', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', 'B', '\034', '\n', '\032', 'l', 'o', 'a', 'd',
'_', 'b', 'a', 'l', 'a', 'n', 'c', 'e', '_', 'r', 'e', 's', 'p', 'o', 'n', 's', 'e', '_', 't', 'y', 'p', 'e', '\"', '\022', '\n',
'\020', 'F', 'a', 'l', 'l', 'b', 'a', 'c', 'k', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\"', '~', '\n', '\032', 'I', 'n', 'i', 't',
'i', 'a', 'l', 'L', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\022', 'Z', '\n',
'\034', 'c', 'l', 'i', 'e', 'n', 't', '_', 's', 't', 'a', 't', 's', '_', 'r', 'e', 'p', 'o', 'r', 't', '_', 'i', 'n', 't', 'e',
'r', 'v', 'a', 'l', '\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', '\031', 'c', 'l', 'i', 'e', 'n', 't', 'S', 't', 'a', 't', 's',
'R', 'e', 'p', 'o', 'r', 't', 'I', 'n', 't', 'e', 'r', 'v', 'a', 'l', 'J', '\004', '\010', '\001', '\020', '\002', '\"', '@', '\n', '\n', 'S',
'e', 'r', 'v', 'e', 'r', 'L', 'i', 's', 't', '\022', ',', '\n', '\007', 's', 'e', 'r', 'v', 'e', 'r', 's', '\030', '\001', ' ', '\003', '(',
'\013', '2', '\022', '.', 'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'S', 'e', 'r', 'v', 'e', 'r', 'R', '\007', 's', 'e',
'r', 'v', 'e', 'r', 's', 'J', '\004', '\010', '\003', '\020', '\004', '\"', '\203', '\001', '\n', '\006', 'S', 'e', 'r', 'v', 'e', 'r', '\022', '\035', '\n',
'\n', 'i', 'p', '_', 'a', 'd', 'd', 'r', 'e', 's', 's', '\030', '\001', ' ', '\001', '(', '\014', 'R', '\t', 'i', 'p', 'A', 'd', 'd', 'r',
'e', 's', 's', '\022', '\022', '\n', '\004', 'p', 'o', 'r', 't', '\030', '\002', ' ', '\001', '(', '\005', 'R', '\004', 'p', 'o', 'r', 't', '\022', ',',
'\n', '\022', 'l', 'o', 'a', 'd', '_', 'b', 'a', 'l', 'a', 'n', 'c', 'e', '_', 't', 'o', 'k', 'e', 'n', '\030', '\003', ' ', '\001', '(',
'\t', 'R', '\020', 'l', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'T', 'o', 'k', 'e', 'n', '\022', '\022', '\n', '\004', 'd', 'r',
'o', 'p', '\030', '\004', ' ', '\001', '(', '\010', 'R', '\004', 'd', 'r', 'o', 'p', 'J', '\004', '\010', '\005', '\020', '\006', '2', 'b', '\n', '\014', 'L',
'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'r', '\022', 'R', '\n', '\013', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'L', 'o', 'a',
'd', '\022', '\036', '.', 'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'L', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c',
'e', 'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '\037', '.', 'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', '.', 'L', 'o', 'a',
'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '(', '\001', '0', '\001', 'B', 'W', '\n', '\r', 'i',
'o', '.', 'g', 'r', 'p', 'c', '.', 'l', 'b', '.', 'v', '1', 'B', '\021', 'L', 'o', 'a', 'd', 'B', 'a', 'l', 'a', 'n', 'c', 'e',
'r', 'P', 'r', 'o', 't', 'o', 'P', '\001', 'Z', '1', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'g', 'o', 'l', 'a', 'n', 'g', '.', 'o',
'r', 'g', '/', 'g', 'r', 'p', 'c', '/', 'b', 'a', 'l', 'a', 'n', 'c', 'e', 'r', '/', 'g', 'r', 'p', 'c', 'l', 'b', '/', 'g',
'r', 'p', 'c', '_', 'l', 'b', '_', 'v', '1', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[3] = {
&google_protobuf_duration_proto_upbdefinit,
&google_protobuf_timestamp_proto_upbdefinit,
NULL
};
upb_def_init src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit = {
deps,
&src_proto_grpc_lb_v1_load_balancer_proto_upb_file_layout,
"src/proto/grpc/lb/v1/load_balancer.proto",
UPB_STRVIEW_INIT(descriptor, 1717)
};

@ -1,75 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/lb/v1/load_balancer.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef SRC_PROTO_GRPC_LB_V1_LOAD_BALANCER_PROTO_UPBDEFS_H_
#define SRC_PROTO_GRPC_LB_V1_LOAD_BALANCER_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 src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit;
UPB_INLINE const upb_msgdef *grpc_lb_v1_LoadBalanceRequest_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.LoadBalanceRequest");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_InitialLoadBalanceRequest_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.InitialLoadBalanceRequest");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_ClientStatsPerToken_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.ClientStatsPerToken");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_ClientStats_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.ClientStats");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_LoadBalanceResponse_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.LoadBalanceResponse");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_FallbackResponse_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.FallbackResponse");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_InitialLoadBalanceResponse_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.InitialLoadBalanceResponse");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_ServerList_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.ServerList");
}
UPB_INLINE const upb_msgdef *grpc_lb_v1_Server_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lb_v1_load_balancer_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lb.v1.Server");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* SRC_PROTO_GRPC_LB_V1_LOAD_BALANCER_PROTO_UPBDEFS_H_ */

@ -1,54 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/lookup/v1/rls.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include "upb/def.h"
#include "src/proto/grpc/lookup/v1/rls.upbdefs.h"
#include "src/proto/grpc/lookup/v1/rls.upb.h"
static const char descriptor[737] = {'\n', '\"', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/', 'g', 'r', 'p', 'c', '/', 'l', 'o', 'o', 'k', 'u', 'p', '/', 'v',
'1', '/', 'r', 'l', 's', '.', 'p', 'r', 'o', 't', 'o', '\022', '\016', 'g', 'r', 'p', 'c', '.', 'l', 'o', 'o', 'k', 'u', 'p', '.',
'v', '1', '\"', '\203', '\003', '\n', '\022', 'R', 'o', 'u', 't', 'e', 'L', 'o', 'o', 'k', 'u', 'p', 'R', 'e', 'q', 'u', 'e', 's', 't',
'\022', '\037', '\n', '\013', 't', 'a', 'r', 'g', 'e', 't', '_', 't', 'y', 'p', 'e', '\030', '\003', ' ', '\001', '(', '\t', 'R', '\n', 't', 'a',
'r', 'g', 'e', 't', 'T', 'y', 'p', 'e', '\022', 'A', '\n', '\006', 'r', 'e', 'a', 's', 'o', 'n', '\030', '\005', ' ', '\001', '(', '\016', '2',
')', '.', 'g', 'r', 'p', 'c', '.', 'l', 'o', 'o', 'k', 'u', 'p', '.', 'v', '1', '.', 'R', 'o', 'u', 't', 'e', 'L', 'o', 'o',
'k', 'u', 'p', 'R', 'e', 'q', 'u', 'e', 's', 't', '.', 'R', 'e', 'a', 's', 'o', 'n', 'R', '\006', 'r', 'e', 'a', 's', 'o', 'n',
'\022', '*', '\n', '\021', 's', 't', 'a', 'l', 'e', '_', 'h', 'e', 'a', 'd', 'e', 'r', '_', 'd', 'a', 't', 'a', '\030', '\006', ' ', '\001',
'(', '\t', 'R', '\017', 's', 't', 'a', 'l', 'e', 'H', 'e', 'a', 'd', 'e', 'r', 'D', 'a', 't', 'a', '\022', 'G', '\n', '\007', 'k', 'e',
'y', '_', 'm', 'a', 'p', '\030', '\004', ' ', '\003', '(', '\013', '2', '.', '.', 'g', 'r', 'p', 'c', '.', 'l', 'o', 'o', 'k', 'u', 'p',
'.', 'v', '1', '.', 'R', 'o', 'u', 't', 'e', 'L', 'o', 'o', 'k', 'u', 'p', 'R', 'e', 'q', 'u', 'e', 's', 't', '.', 'K', 'e',
'y', 'M', 'a', 'p', 'E', 'n', 't', 'r', 'y', 'R', '\006', 'k', 'e', 'y', 'M', 'a', 'p', '\032', '9', '\n', '\013', 'K', 'e', 'y', 'M',
'a', 'p', 'E', 'n', 't', 'r', 'y', '\022', '\020', '\n', '\003', 'k', 'e', 'y', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\003', 'k', 'e', 'y',
'\022', '\024', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\005', 'v', 'a', 'l', 'u', 'e', ':', '\002', '8',
'\001', '\"', '?', '\n', '\006', 'R', 'e', 'a', 's', 'o', 'n', '\022', '\022', '\n', '\016', 'R', 'E', 'A', 'S', 'O', 'N', '_', 'U', 'N', 'K',
'N', 'O', 'W', 'N', '\020', '\000', '\022', '\017', '\n', '\013', 'R', 'E', 'A', 'S', 'O', 'N', '_', 'M', 'I', 'S', 'S', '\020', '\001', '\022', '\020',
'\n', '\014', 'R', 'E', 'A', 'S', 'O', 'N', '_', 'S', 'T', 'A', 'L', 'E', '\020', '\002', 'J', '\004', '\010', '\001', '\020', '\002', 'J', '\004', '\010',
'\002', '\020', '\003', 'R', '\006', 's', 'e', 'r', 'v', 'e', 'r', 'R', '\004', 'p', 'a', 't', 'h', '\"', '^', '\n', '\023', 'R', 'o', 'u', 't',
'e', 'L', 'o', 'o', 'k', 'u', 'p', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\022', '\030', '\n', '\007', 't', 'a', 'r', 'g', 'e', 't',
's', '\030', '\003', ' ', '\003', '(', '\t', 'R', '\007', 't', 'a', 'r', 'g', 'e', 't', 's', '\022', '\037', '\n', '\013', 'h', 'e', 'a', 'd', 'e',
'r', '_', 'd', 'a', 't', 'a', '\030', '\002', ' ', '\001', '(', '\t', 'R', '\n', 'h', 'e', 'a', 'd', 'e', 'r', 'D', 'a', 't', 'a', 'J',
'\004', '\010', '\001', '\020', '\002', 'R', '\006', 't', 'a', 'r', 'g', 'e', 't', '2', 'n', '\n', '\022', 'R', 'o', 'u', 't', 'e', 'L', 'o', 'o',
'k', 'u', 'p', 'S', 'e', 'r', 'v', 'i', 'c', 'e', '\022', 'X', '\n', '\013', 'R', 'o', 'u', 't', 'e', 'L', 'o', 'o', 'k', 'u', 'p',
'\022', '\"', '.', 'g', 'r', 'p', 'c', '.', 'l', 'o', 'o', 'k', 'u', 'p', '.', 'v', '1', '.', 'R', 'o', 'u', 't', 'e', 'L', 'o',
'o', 'k', 'u', 'p', 'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '#', '.', 'g', 'r', 'p', 'c', '.', 'l', 'o', 'o', 'k', 'u', 'p',
'.', 'v', '1', '.', 'R', 'o', 'u', 't', 'e', 'L', 'o', 'o', 'k', 'u', 'p', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\"', '\000',
'B', 'M', '\n', '\021', 'i', 'o', '.', 'g', 'r', 'p', 'c', '.', 'l', 'o', 'o', 'k', 'u', 'p', '.', 'v', '1', 'B', '\010', 'R', 'l',
's', 'P', 'r', 'o', 't', 'o', 'P', '\001', 'Z', ',', 'g', 'o', 'o', 'g', 'l', 'e', '.', 'g', 'o', 'l', 'a', 'n', 'g', '.', 'o',
'r', 'g', '/', 'g', 'r', 'p', 'c', '/', 'l', 'o', 'o', 'k', 'u', 'p', '/', 'g', 'r', 'p', 'c', '_', 'l', 'o', 'o', 'k', 'u',
'p', '_', 'v', '1', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
};
static upb_def_init *deps[1] = {
NULL
};
upb_def_init src_proto_grpc_lookup_v1_rls_proto_upbdefinit = {
deps,
&src_proto_grpc_lookup_v1_rls_proto_upb_file_layout,
"src/proto/grpc/lookup/v1/rls.proto",
UPB_STRVIEW_INIT(descriptor, 737)
};

@ -1,45 +0,0 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* src/proto/grpc/lookup/v1/rls.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef SRC_PROTO_GRPC_LOOKUP_V1_RLS_PROTO_UPBDEFS_H_
#define SRC_PROTO_GRPC_LOOKUP_V1_RLS_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 src_proto_grpc_lookup_v1_rls_proto_upbdefinit;
UPB_INLINE const upb_msgdef *grpc_lookup_v1_RouteLookupRequest_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lookup_v1_rls_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lookup.v1.RouteLookupRequest");
}
UPB_INLINE const upb_msgdef *grpc_lookup_v1_RouteLookupRequest_KeyMapEntry_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lookup_v1_rls_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lookup.v1.RouteLookupRequest.KeyMapEntry");
}
UPB_INLINE const upb_msgdef *grpc_lookup_v1_RouteLookupResponse_getmsgdef(upb_symtab *s) {
_upb_symtab_loaddefinit(s, &src_proto_grpc_lookup_v1_rls_proto_upbdefinit);
return upb_symtab_lookupmsg(s, "grpc.lookup.v1.RouteLookupResponse");
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* SRC_PROTO_GRPC_LOOKUP_V1_RLS_PROTO_UPBDEFS_H_ */

@ -12,6 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
load("@rules_proto//proto:defs.bzl", "proto_library")
load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library")
licenses(["notice"])
@ -26,3 +27,8 @@ grpc_proto_library(
srcs = ["rls.proto"],
well_known_protos = True,
)
proto_library(
name = "rls_proto_descriptor",
srcs = ["rls.proto"],
)

@ -94,8 +94,13 @@ def _extract_rules_from_bazel_xml(xml_tree):
rule_clazz = rule_dict['class']
rule_name = rule_dict['name']
if rule_clazz in [
'cc_library', 'cc_binary', 'cc_test', 'cc_proto_library',
'proto_library'
'cc_library',
'cc_binary',
'cc_test',
'cc_proto_library',
'proto_library',
'upb_proto_library',
'upb_proto_reflection_library',
]:
if rule_name in result:
raise Exception('Rule %s already present' % rule_name)
@ -319,7 +324,6 @@ def _compute_transitive_metadata(
_extract_public_headers(bazel_rules[dep]))
collapsed_headers.update(
_extract_nonpublic_headers(bazel_rules[dep]))
# This item is a "visited" flag
bazel_rule['_PROCESSING_DONE'] = True
# Following items are described in the docstinrg.
@ -376,6 +380,55 @@ def update_test_metadata_with_transitive_metadata(
lib_dict['language'] = 'c++'
def _expand_upb_proto_library_rules(bazel_rules):
# Expand the .proto files from UPB proto library rules into the pre-generated
# upb.h and upb.c files.
GEN_UPB_ROOT = '//:src/core/ext/upb-generated/'
GEN_UPBDEFS_ROOT = '//:src/core/ext/upbdefs-generated/'
EXTERNAL_LINKS = [
('@com_google_protobuf//', ':src/'),
]
for name, bazel_rule in bazel_rules.items():
gen_func = bazel_rule.get('generator_function', None)
if gen_func in ('grpc_upb_proto_library',
'grpc_upb_proto_reflection_library'):
# get proto dependency
deps = bazel_rule['deps']
if len(deps) != 1:
raise Exception(
'upb rule "{0}" should have 1 proto dependency but has "{1}"'
.format(name, deps))
proto_dep = deps[0]
proto_rule = bazel_rules.get(proto_dep, None)
if proto_rule is None:
raise Exception(
'upb rule "{0}"\'s dependency "{1}" is not found'.format(
name, proto_rule))
# deps is not properly fetched from bazel query for upb_proto_library target
# so add the upb dependency manually
bazel_rule['deps'] = [
'//external:upb_lib', '//external:upb_lib_descriptor',
'//external:upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me'
]
# populate the upb_proto_library rule with pre-generated upb headers
# and sources using proto_rule
srcs = []
hdrs = []
for proto_src in proto_rule['srcs']:
for external_link in EXTERNAL_LINKS:
if proto_src.startswith(external_link[0]):
proto_src = proto_src[len(external_link[0]) +
len(external_link[1]):]
break
proto_src = _extract_source_file_path(proto_src)
ext = '.upb' if gen_func == 'grpc_upb_proto_library' else '.upbdefs'
root = GEN_UPB_ROOT if gen_func == 'grpc_upb_proto_library' else GEN_UPBDEFS_ROOT
srcs.append(root + proto_src.replace('.proto', ext + '.c'))
hdrs.append(root + proto_src.replace('.proto', ext + '.h'))
bazel_rule['srcs'] = srcs
bazel_rule['hdrs'] = hdrs
def _generate_build_metadata(build_extra_metadata: BuildDict,
bazel_rules: BuildDict) -> BuildDict:
"""Generate build metadata in build.yaml-like format bazel build metadata and build.yaml-specific "extra metadata"."""
@ -908,6 +961,11 @@ for query in _BAZEL_DEPS_QUERIES:
bazel_rules.update(
_extract_rules_from_bazel_xml(_bazel_query_xml_tree(query)))
# Step 1.5: The sources for UPB protos are pre-generated, so we want
# to expand the UPB proto library bazel rules into the generated
# .upb.h and .upb.c files.
_expand_upb_proto_library_rules(bazel_rules)
# Step 2: Extract the known bazel cc_test tests. While most tests
# will be buildable with other build systems just fine, some of these tests
# would be too difficult to build and run with other build systems,

@ -120,20 +120,8 @@ proto_files=( \
"google/api/expr/v1alpha1/checked.proto" \
"google/api/expr/v1alpha1/syntax.proto" \
"google/api/http.proto" \
"google/protobuf/any.proto" \
"google/protobuf/descriptor.proto" \
"google/protobuf/duration.proto" \
"google/protobuf/empty.proto" \
"google/protobuf/struct.proto" \
"google/protobuf/timestamp.proto" \
"google/protobuf/wrappers.proto" \
"google/rpc/status.proto" \
"src/proto/grpc/gcp/altscontext.proto" \
"src/proto/grpc/gcp/handshaker.proto" \
"src/proto/grpc/gcp/transport_security_common.proto" \
"src/proto/grpc/health/v1/health.proto" \
"src/proto/grpc/lb/v1/load_balancer.proto" \
"src/proto/grpc/lookup/v1/rls.proto" \
"third_party/istio/security/proto/providers/google/meshca.proto" \
"udpa/annotations/migrate.proto" \
"udpa/annotations/security.proto" \
@ -175,3 +163,9 @@ do
--upb_out=$UPBDEFS_OUTPUT_DIR \
--plugin=protoc-gen-upb=$UPBDEFS_PLUGIN
done
# generate upb files from bazel rules
python3 tools/codegen/core/gen_upb_api_from_bazel_xml.py \
--upb_out=$UPB_OUTPUT_DIR \
--upbdefs_out=$UPBDEFS_OUTPUT_DIR \
--verbose

@ -0,0 +1,175 @@
#!/usr/bin/env python3
# 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.
# This script generates upb source files (e.g. *.upb.c) from all upb targets
# in Bazel BUILD file. These generate upb files are for non-Bazel build such
# as makefile and python build which cannot generate them at the build time.
#
# As an example, for the following upb target
#
# grpc_upb_proto_library(
# name = "grpc_health_upb",
# deps = ["//src/proto/grpc/health/v1:health_proto_descriptor"],
# )
#
# this will generate these upb source files at src/core/ext/upb-generated.
#
# src/proto/grpc/health/v1/health.upb.c
# src/proto/grpc/health/v1/health.upb.h
import argparse
import collections
import os
import shutil
import subprocess
import xml.etree.ElementTree
# Rule object representing the UPB rule of Bazel BUILD.
Rule = collections.namedtuple('Rule', 'name type srcs deps proto_files')
BAZEL_BIN = 'tools/bazel'
def parse_bazel_rule(elem):
'''Returns a rule from bazel XML rule.'''
srcs = []
deps = []
for child in elem:
if child.tag == 'list' and child.attrib['name'] == 'srcs':
for tag in child:
if tag.tag == 'label':
srcs.append(tag.attrib['value'])
if child.tag == 'list' and child.attrib['name'] == 'deps':
for tag in child:
if tag.tag == 'label':
deps.append(tag.attrib['value'])
return Rule(elem.attrib['name'], elem.attrib['class'], srcs, deps, [])
def read_upb_bazel_rules():
'''Runs bazel query on given package file and returns all upb rules.'''
# Use a wrapper version of bazel in gRPC not to use system-wide bazel
# to avoid bazel conflict when running on Kokoro.
result = subprocess.check_output(
[BAZEL_BIN, 'query', '--output', 'xml', '--noimplicit_deps', '//:all'])
root = xml.etree.ElementTree.fromstring(result)
rules = [
parse_bazel_rule(elem)
for elem in root
if elem.tag == 'rule' and elem.attrib['class'] in [
'upb_proto_library',
'upb_proto_reflection_library',
]
]
# query all dependencies of upb rules to get a list of proto files
all_deps = [dep for rule in rules for dep in rule.deps]
result = subprocess.check_output([
BAZEL_BIN, 'query', '--output', 'xml', '--noimplicit_deps',
' union '.join(all_deps)
])
root = xml.etree.ElementTree.fromstring(result)
dep_rules = {}
for dep_rule in (
parse_bazel_rule(elem) for elem in root if elem.tag == 'rule'):
dep_rules[dep_rule.name] = dep_rule
# add proto files to upb rules
for rule in rules:
if len(rule.deps) == 1:
dep_rule = dep_rules.get(rule.deps[0], None)
if dep_rule:
rule.proto_files.extend(dep_rule.srcs)
return rules
def build_upb_bazel_rules(rules):
result = subprocess.check_output([BAZEL_BIN, 'build'] +
[rule.name for rule in rules])
def get_upb_path(proto_path, ext):
return proto_path.replace(':', '/').replace('.proto', ext)
def get_bazel_bin_root_path(elink):
BAZEL_BIN_ROOT = 'bazel-bin/'
if elink[0].startswith('@'):
# external
return os.path.join(BAZEL_BIN_ROOT, 'external',
elink[0].replace('@', '').replace('//', ''))
else:
# internal
return BAZEL_BIN_ROOT
def copy_upb_generated_files(rules, args):
EXTERNAL_LINKS = [
('@com_google_protobuf//', ':src/'),
]
for rule in rules:
files = []
elink = ('//', '')
for external_link in EXTERNAL_LINKS:
if rule.proto_files[0].startswith(external_link[0]):
elink = external_link
break
if rule.type == 'upb_proto_library':
for proto_file in rule.proto_files:
proto_file = proto_file[len(elink[0]) + len(elink[1]):]
files.append(get_upb_path(proto_file, '.upb.h'))
files.append(get_upb_path(proto_file, '.upb.c'))
output_dir = args.upb_out
else:
for proto_file in rule.proto_files:
proto_file = proto_file[len(elink[0]) + len(elink[1]):]
files.append(get_upb_path(proto_file, '.upbdefs.h'))
files.append(get_upb_path(proto_file, '.upbdefs.c'))
output_dir = args.upbdefs_out
for file in files:
src = os.path.join(get_bazel_bin_root_path(elink), file)
dst = os.path.join(output_dir, file)
if args.verbose:
print('Copy:')
print(' {0}'.format(src))
print(' -> {0}'.format(dst))
os.makedirs(os.path.split(dst)[0], exist_ok=True)
shutil.copyfile(src, dst)
parser = argparse.ArgumentParser(description='UPB code-gen from bazel')
parser.add_argument('--verbose', default=False, action='store_true')
parser.add_argument('--upb_out',
default='src/core/ext/upb-generated',
help='Output directory for upb targets')
parser.add_argument('--upbdefs_out',
default='src/core/ext/upbdefs-generated',
help='Output directory for upbdefs targets')
def main():
args = parser.parse_args()
rules = read_upb_bazel_rules()
if args.verbose:
print('Rules:')
for rule in rules:
print(' name={0} type={1} proto_files={2}'.format(
rule.name, rule.type, rule.proto_files))
if rules:
build_upb_bazel_rules(rules)
copy_upb_generated_files(rules, args)
if __name__ == '__main__':
main()
Loading…
Cancel
Save