internal/cloud/gcp: use pkg.go.dev/cloud.google.com/go for Compute Engine

The internal GCP package used `pkg.go.dev/google.golang.org/api` [1] to
interact with Compute Engine API. Modify the package to use the new and
idiomatic `pkg.go.dev/cloud.google.com/go` [2] library for interacting
with the Compute Engine API. The new library have been already used to
interact with the Cloudbuild and Storage APIs. The new library was not
used for Compute Engine since the beginning, because at that time, it
didn't support Compute Engine.

Update go.mod and vendored packages.

[1] https://github.com/googleapis/google-api-go-client
[2] https://github.com/googleapis/google-cloud-go

Signed-off-by: Tomas Hozza <thozza@redhat.com>
This commit is contained in:
Tomas Hozza 2022-01-04 11:32:52 +01:00 committed by Sanne Raymaekers
parent 9302befa67
commit 07a5745875
714 changed files with 441887 additions and 233259 deletions

View file

@ -0,0 +1 @@
Google Inc.

View file

@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
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.

View file

@ -0,0 +1,100 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: opencensus/proto/resource/v1/resource.proto
package v1
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// Resource information.
type Resource struct {
// Type identifier for the resource.
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
// Set of labels that describe the resource.
Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Resource) Reset() { *m = Resource{} }
func (m *Resource) String() string { return proto.CompactTextString(m) }
func (*Resource) ProtoMessage() {}
func (*Resource) Descriptor() ([]byte, []int) {
return fileDescriptor_584700775a2fc762, []int{0}
}
func (m *Resource) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Resource.Unmarshal(m, b)
}
func (m *Resource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Resource.Marshal(b, m, deterministic)
}
func (m *Resource) XXX_Merge(src proto.Message) {
xxx_messageInfo_Resource.Merge(m, src)
}
func (m *Resource) XXX_Size() int {
return xxx_messageInfo_Resource.Size(m)
}
func (m *Resource) XXX_DiscardUnknown() {
xxx_messageInfo_Resource.DiscardUnknown(m)
}
var xxx_messageInfo_Resource proto.InternalMessageInfo
func (m *Resource) GetType() string {
if m != nil {
return m.Type
}
return ""
}
func (m *Resource) GetLabels() map[string]string {
if m != nil {
return m.Labels
}
return nil
}
func init() {
proto.RegisterType((*Resource)(nil), "opencensus.proto.resource.v1.Resource")
proto.RegisterMapType((map[string]string)(nil), "opencensus.proto.resource.v1.Resource.LabelsEntry")
}
func init() {
proto.RegisterFile("opencensus/proto/resource/v1/resource.proto", fileDescriptor_584700775a2fc762)
}
var fileDescriptor_584700775a2fc762 = []byte{
// 251 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xd2, 0xce, 0x2f, 0x48, 0xcd,
0x4b, 0x4e, 0xcd, 0x2b, 0x2e, 0x2d, 0xd6, 0x2f, 0x28, 0xca, 0x2f, 0xc9, 0xd7, 0x2f, 0x4a, 0x2d,
0xce, 0x2f, 0x2d, 0x4a, 0x4e, 0xd5, 0x2f, 0x33, 0x84, 0xb3, 0xf5, 0xc0, 0x52, 0x42, 0x32, 0x08,
0xc5, 0x10, 0x11, 0x3d, 0xb8, 0x82, 0x32, 0x43, 0xa5, 0xa5, 0x8c, 0x5c, 0x1c, 0x41, 0x50, 0xbe,
0x90, 0x10, 0x17, 0x4b, 0x49, 0x65, 0x41, 0xaa, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x67, 0x10, 0x98,
0x2d, 0xe4, 0xc5, 0xc5, 0x96, 0x93, 0x98, 0x94, 0x9a, 0x53, 0x2c, 0xc1, 0xa4, 0xc0, 0xac, 0xc1,
0x6d, 0x64, 0xa4, 0x87, 0xcf, 0x3c, 0x3d, 0x98, 0x59, 0x7a, 0x3e, 0x60, 0x4d, 0xae, 0x79, 0x25,
0x45, 0x95, 0x41, 0x50, 0x13, 0xa4, 0x2c, 0xb9, 0xb8, 0x91, 0x84, 0x85, 0x04, 0xb8, 0x98, 0xb3,
0x53, 0x2b, 0xa1, 0xb6, 0x81, 0x98, 0x42, 0x22, 0x5c, 0xac, 0x65, 0x89, 0x39, 0xa5, 0xa9, 0x12,
0x4c, 0x60, 0x31, 0x08, 0xc7, 0x8a, 0xc9, 0x82, 0xd1, 0x69, 0x06, 0x23, 0x97, 0x7c, 0x66, 0x3e,
0x5e, 0xbb, 0x9d, 0x78, 0x61, 0x96, 0x07, 0x80, 0xa4, 0x02, 0x18, 0xa3, 0x5c, 0xd3, 0x33, 0x4b,
0x32, 0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0x21, 0xba, 0x74, 0x33, 0xf3, 0x8a, 0x4b, 0x8a,
0x4a, 0x73, 0x53, 0xf3, 0x4a, 0x12, 0x4b, 0x32, 0xf3, 0xf3, 0xf4, 0x11, 0x06, 0xea, 0x42, 0x42,
0x32, 0x3d, 0x35, 0x4f, 0x37, 0x1d, 0x25, 0x40, 0x5f, 0x31, 0xc9, 0xf8, 0x17, 0xa4, 0xe6, 0x39,
0x43, 0xac, 0x05, 0x9b, 0x8d, 0xf0, 0x66, 0x98, 0x61, 0x12, 0x1b, 0x58, 0xa3, 0x31, 0x20, 0x00,
0x00, 0xff, 0xff, 0xcf, 0x32, 0xff, 0x46, 0x96, 0x01, 0x00, 0x00,
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,359 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: opencensus/proto/trace/v1/trace_config.proto
package v1
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// How spans should be sampled:
// - Always off
// - Always on
// - Always follow the parent Span's decision (off if no parent).
type ConstantSampler_ConstantDecision int32
const (
ConstantSampler_ALWAYS_OFF ConstantSampler_ConstantDecision = 0
ConstantSampler_ALWAYS_ON ConstantSampler_ConstantDecision = 1
ConstantSampler_ALWAYS_PARENT ConstantSampler_ConstantDecision = 2
)
var ConstantSampler_ConstantDecision_name = map[int32]string{
0: "ALWAYS_OFF",
1: "ALWAYS_ON",
2: "ALWAYS_PARENT",
}
var ConstantSampler_ConstantDecision_value = map[string]int32{
"ALWAYS_OFF": 0,
"ALWAYS_ON": 1,
"ALWAYS_PARENT": 2,
}
func (x ConstantSampler_ConstantDecision) String() string {
return proto.EnumName(ConstantSampler_ConstantDecision_name, int32(x))
}
func (ConstantSampler_ConstantDecision) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_5359209b41ff50c5, []int{2, 0}
}
// Global configuration of the trace service. All fields must be specified, or
// the default (zero) values will be used for each type.
type TraceConfig struct {
// The global default sampler used to make decisions on span sampling.
//
// Types that are valid to be assigned to Sampler:
// *TraceConfig_ProbabilitySampler
// *TraceConfig_ConstantSampler
// *TraceConfig_RateLimitingSampler
Sampler isTraceConfig_Sampler `protobuf_oneof:"sampler"`
// The global default max number of attributes per span.
MaxNumberOfAttributes int64 `protobuf:"varint,4,opt,name=max_number_of_attributes,json=maxNumberOfAttributes,proto3" json:"max_number_of_attributes,omitempty"`
// The global default max number of annotation events per span.
MaxNumberOfAnnotations int64 `protobuf:"varint,5,opt,name=max_number_of_annotations,json=maxNumberOfAnnotations,proto3" json:"max_number_of_annotations,omitempty"`
// The global default max number of message events per span.
MaxNumberOfMessageEvents int64 `protobuf:"varint,6,opt,name=max_number_of_message_events,json=maxNumberOfMessageEvents,proto3" json:"max_number_of_message_events,omitempty"`
// The global default max number of link entries per span.
MaxNumberOfLinks int64 `protobuf:"varint,7,opt,name=max_number_of_links,json=maxNumberOfLinks,proto3" json:"max_number_of_links,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TraceConfig) Reset() { *m = TraceConfig{} }
func (m *TraceConfig) String() string { return proto.CompactTextString(m) }
func (*TraceConfig) ProtoMessage() {}
func (*TraceConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_5359209b41ff50c5, []int{0}
}
func (m *TraceConfig) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TraceConfig.Unmarshal(m, b)
}
func (m *TraceConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TraceConfig.Marshal(b, m, deterministic)
}
func (m *TraceConfig) XXX_Merge(src proto.Message) {
xxx_messageInfo_TraceConfig.Merge(m, src)
}
func (m *TraceConfig) XXX_Size() int {
return xxx_messageInfo_TraceConfig.Size(m)
}
func (m *TraceConfig) XXX_DiscardUnknown() {
xxx_messageInfo_TraceConfig.DiscardUnknown(m)
}
var xxx_messageInfo_TraceConfig proto.InternalMessageInfo
type isTraceConfig_Sampler interface {
isTraceConfig_Sampler()
}
type TraceConfig_ProbabilitySampler struct {
ProbabilitySampler *ProbabilitySampler `protobuf:"bytes,1,opt,name=probability_sampler,json=probabilitySampler,proto3,oneof"`
}
type TraceConfig_ConstantSampler struct {
ConstantSampler *ConstantSampler `protobuf:"bytes,2,opt,name=constant_sampler,json=constantSampler,proto3,oneof"`
}
type TraceConfig_RateLimitingSampler struct {
RateLimitingSampler *RateLimitingSampler `protobuf:"bytes,3,opt,name=rate_limiting_sampler,json=rateLimitingSampler,proto3,oneof"`
}
func (*TraceConfig_ProbabilitySampler) isTraceConfig_Sampler() {}
func (*TraceConfig_ConstantSampler) isTraceConfig_Sampler() {}
func (*TraceConfig_RateLimitingSampler) isTraceConfig_Sampler() {}
func (m *TraceConfig) GetSampler() isTraceConfig_Sampler {
if m != nil {
return m.Sampler
}
return nil
}
func (m *TraceConfig) GetProbabilitySampler() *ProbabilitySampler {
if x, ok := m.GetSampler().(*TraceConfig_ProbabilitySampler); ok {
return x.ProbabilitySampler
}
return nil
}
func (m *TraceConfig) GetConstantSampler() *ConstantSampler {
if x, ok := m.GetSampler().(*TraceConfig_ConstantSampler); ok {
return x.ConstantSampler
}
return nil
}
func (m *TraceConfig) GetRateLimitingSampler() *RateLimitingSampler {
if x, ok := m.GetSampler().(*TraceConfig_RateLimitingSampler); ok {
return x.RateLimitingSampler
}
return nil
}
func (m *TraceConfig) GetMaxNumberOfAttributes() int64 {
if m != nil {
return m.MaxNumberOfAttributes
}
return 0
}
func (m *TraceConfig) GetMaxNumberOfAnnotations() int64 {
if m != nil {
return m.MaxNumberOfAnnotations
}
return 0
}
func (m *TraceConfig) GetMaxNumberOfMessageEvents() int64 {
if m != nil {
return m.MaxNumberOfMessageEvents
}
return 0
}
func (m *TraceConfig) GetMaxNumberOfLinks() int64 {
if m != nil {
return m.MaxNumberOfLinks
}
return 0
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*TraceConfig) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*TraceConfig_ProbabilitySampler)(nil),
(*TraceConfig_ConstantSampler)(nil),
(*TraceConfig_RateLimitingSampler)(nil),
}
}
// Sampler that tries to uniformly sample traces with a given probability.
// The probability of sampling a trace is equal to that of the specified probability.
type ProbabilitySampler struct {
// The desired probability of sampling. Must be within [0.0, 1.0].
SamplingProbability float64 `protobuf:"fixed64,1,opt,name=samplingProbability,proto3" json:"samplingProbability,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProbabilitySampler) Reset() { *m = ProbabilitySampler{} }
func (m *ProbabilitySampler) String() string { return proto.CompactTextString(m) }
func (*ProbabilitySampler) ProtoMessage() {}
func (*ProbabilitySampler) Descriptor() ([]byte, []int) {
return fileDescriptor_5359209b41ff50c5, []int{1}
}
func (m *ProbabilitySampler) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProbabilitySampler.Unmarshal(m, b)
}
func (m *ProbabilitySampler) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProbabilitySampler.Marshal(b, m, deterministic)
}
func (m *ProbabilitySampler) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProbabilitySampler.Merge(m, src)
}
func (m *ProbabilitySampler) XXX_Size() int {
return xxx_messageInfo_ProbabilitySampler.Size(m)
}
func (m *ProbabilitySampler) XXX_DiscardUnknown() {
xxx_messageInfo_ProbabilitySampler.DiscardUnknown(m)
}
var xxx_messageInfo_ProbabilitySampler proto.InternalMessageInfo
func (m *ProbabilitySampler) GetSamplingProbability() float64 {
if m != nil {
return m.SamplingProbability
}
return 0
}
// Sampler that always makes a constant decision on span sampling.
type ConstantSampler struct {
Decision ConstantSampler_ConstantDecision `protobuf:"varint,1,opt,name=decision,proto3,enum=opencensus.proto.trace.v1.ConstantSampler_ConstantDecision" json:"decision,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ConstantSampler) Reset() { *m = ConstantSampler{} }
func (m *ConstantSampler) String() string { return proto.CompactTextString(m) }
func (*ConstantSampler) ProtoMessage() {}
func (*ConstantSampler) Descriptor() ([]byte, []int) {
return fileDescriptor_5359209b41ff50c5, []int{2}
}
func (m *ConstantSampler) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConstantSampler.Unmarshal(m, b)
}
func (m *ConstantSampler) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConstantSampler.Marshal(b, m, deterministic)
}
func (m *ConstantSampler) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConstantSampler.Merge(m, src)
}
func (m *ConstantSampler) XXX_Size() int {
return xxx_messageInfo_ConstantSampler.Size(m)
}
func (m *ConstantSampler) XXX_DiscardUnknown() {
xxx_messageInfo_ConstantSampler.DiscardUnknown(m)
}
var xxx_messageInfo_ConstantSampler proto.InternalMessageInfo
func (m *ConstantSampler) GetDecision() ConstantSampler_ConstantDecision {
if m != nil {
return m.Decision
}
return ConstantSampler_ALWAYS_OFF
}
// Sampler that tries to sample with a rate per time window.
type RateLimitingSampler struct {
// Rate per second.
Qps int64 `protobuf:"varint,1,opt,name=qps,proto3" json:"qps,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RateLimitingSampler) Reset() { *m = RateLimitingSampler{} }
func (m *RateLimitingSampler) String() string { return proto.CompactTextString(m) }
func (*RateLimitingSampler) ProtoMessage() {}
func (*RateLimitingSampler) Descriptor() ([]byte, []int) {
return fileDescriptor_5359209b41ff50c5, []int{3}
}
func (m *RateLimitingSampler) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RateLimitingSampler.Unmarshal(m, b)
}
func (m *RateLimitingSampler) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RateLimitingSampler.Marshal(b, m, deterministic)
}
func (m *RateLimitingSampler) XXX_Merge(src proto.Message) {
xxx_messageInfo_RateLimitingSampler.Merge(m, src)
}
func (m *RateLimitingSampler) XXX_Size() int {
return xxx_messageInfo_RateLimitingSampler.Size(m)
}
func (m *RateLimitingSampler) XXX_DiscardUnknown() {
xxx_messageInfo_RateLimitingSampler.DiscardUnknown(m)
}
var xxx_messageInfo_RateLimitingSampler proto.InternalMessageInfo
func (m *RateLimitingSampler) GetQps() int64 {
if m != nil {
return m.Qps
}
return 0
}
func init() {
proto.RegisterEnum("opencensus.proto.trace.v1.ConstantSampler_ConstantDecision", ConstantSampler_ConstantDecision_name, ConstantSampler_ConstantDecision_value)
proto.RegisterType((*TraceConfig)(nil), "opencensus.proto.trace.v1.TraceConfig")
proto.RegisterType((*ProbabilitySampler)(nil), "opencensus.proto.trace.v1.ProbabilitySampler")
proto.RegisterType((*ConstantSampler)(nil), "opencensus.proto.trace.v1.ConstantSampler")
proto.RegisterType((*RateLimitingSampler)(nil), "opencensus.proto.trace.v1.RateLimitingSampler")
}
func init() {
proto.RegisterFile("opencensus/proto/trace/v1/trace_config.proto", fileDescriptor_5359209b41ff50c5)
}
var fileDescriptor_5359209b41ff50c5 = []byte{
// 506 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xc1, 0x6e, 0xd3, 0x30,
0x18, 0xc7, 0x97, 0x76, 0x6c, 0xec, 0x9b, 0xb6, 0x05, 0x57, 0x43, 0xa9, 0xb4, 0xc3, 0x94, 0x0b,
0x13, 0x22, 0x09, 0x1d, 0x07, 0x84, 0x90, 0x90, 0xda, 0x6e, 0x15, 0x87, 0xd2, 0x56, 0xd9, 0x44,
0x05, 0x97, 0xe0, 0x64, 0x6e, 0xb0, 0x68, 0xec, 0x60, 0x3b, 0xd5, 0x78, 0x0d, 0xce, 0x3c, 0x04,
0xcf, 0xc5, 0x53, 0xa0, 0x3a, 0x21, 0x49, 0xdb, 0x6d, 0xe2, 0x96, 0xef, 0xfb, 0x7f, 0xbf, 0x9f,
0xad, 0xd8, 0x86, 0x17, 0x3c, 0x25, 0x2c, 0x22, 0x4c, 0x66, 0xd2, 0x4b, 0x05, 0x57, 0xdc, 0x53,
0x02, 0x47, 0xc4, 0x5b, 0x74, 0xf2, 0x8f, 0x20, 0xe2, 0x6c, 0x46, 0x63, 0x57, 0x67, 0xa8, 0x5d,
0x4d, 0xe7, 0x1d, 0x57, 0x0f, 0xb9, 0x8b, 0x8e, 0xfd, 0x6b, 0x1b, 0xf6, 0xaf, 0x97, 0x45, 0x5f,
0x03, 0xe8, 0x0b, 0xb4, 0x52, 0xc1, 0x43, 0x1c, 0xd2, 0x39, 0x55, 0x3f, 0x02, 0x89, 0x93, 0x74,
0x4e, 0x84, 0x65, 0x9c, 0x1a, 0x67, 0xfb, 0xe7, 0x8e, 0x7b, 0xaf, 0xc8, 0x9d, 0x54, 0xd4, 0x55,
0x0e, 0xbd, 0xdf, 0xf2, 0x51, 0xba, 0xd1, 0x45, 0x53, 0x30, 0x23, 0xce, 0xa4, 0xc2, 0x4c, 0x95,
0xfa, 0x86, 0xd6, 0x3f, 0x7f, 0x40, 0xdf, 0x2f, 0x90, 0xca, 0x7d, 0x14, 0xad, 0xb6, 0xd0, 0x0d,
0x1c, 0x0b, 0xac, 0x48, 0x30, 0xa7, 0x09, 0x55, 0x94, 0xc5, 0xa5, 0xbd, 0xa9, 0xed, 0xee, 0x03,
0x76, 0x1f, 0x2b, 0x32, 0x2c, 0xb0, 0x6a, 0x85, 0x96, 0xd8, 0x6c, 0xa3, 0xd7, 0x60, 0x25, 0xf8,
0x36, 0x60, 0x59, 0x12, 0x12, 0x11, 0xf0, 0x59, 0x80, 0x95, 0x12, 0x34, 0xcc, 0x14, 0x91, 0xd6,
0xf6, 0xa9, 0x71, 0xd6, 0xf4, 0x8f, 0x13, 0x7c, 0x3b, 0xd2, 0xf1, 0x78, 0xd6, 0x2d, 0x43, 0xf4,
0x06, 0xda, 0x6b, 0x20, 0x63, 0x5c, 0x61, 0x45, 0x39, 0x93, 0xd6, 0x23, 0x4d, 0x3e, 0xad, 0x93,
0x55, 0x8a, 0xde, 0xc1, 0xc9, 0x2a, 0x9a, 0x10, 0x29, 0x71, 0x4c, 0x02, 0xb2, 0x20, 0x4c, 0x49,
0x6b, 0x47, 0xd3, 0x56, 0x8d, 0xfe, 0x90, 0x0f, 0x5c, 0xea, 0x1c, 0x39, 0xd0, 0x5a, 0xe5, 0xe7,
0x94, 0x7d, 0x93, 0xd6, 0xae, 0xc6, 0xcc, 0x1a, 0x36, 0x5c, 0xf6, 0x7b, 0x7b, 0xb0, 0x5b, 0xfc,
0x3a, 0x7b, 0x00, 0x68, 0xf3, 0x60, 0xd1, 0x4b, 0x68, 0xe9, 0x01, 0xca, 0xe2, 0x5a, 0xaa, 0x2f,
0x89, 0xe1, 0xdf, 0x15, 0xd9, 0xbf, 0x0d, 0x38, 0x5a, 0x3b, 0x42, 0x34, 0x85, 0xc7, 0x37, 0x24,
0xa2, 0x92, 0x72, 0xa6, 0xd1, 0xc3, 0xf3, 0xb7, 0xff, 0x7f, 0x01, 0xca, 0xfa, 0xa2, 0x50, 0xf8,
0xa5, 0xcc, 0xbe, 0x00, 0x73, 0x3d, 0x45, 0x87, 0x00, 0xdd, 0xe1, 0xb4, 0xfb, 0xe9, 0x2a, 0x18,
0x0f, 0x06, 0xe6, 0x16, 0x3a, 0x80, 0xbd, 0x7f, 0xf5, 0xc8, 0x34, 0xd0, 0x13, 0x38, 0x28, 0xca,
0x49, 0xd7, 0xbf, 0x1c, 0x5d, 0x9b, 0x0d, 0xfb, 0x19, 0xb4, 0xee, 0xb8, 0x16, 0xc8, 0x84, 0xe6,
0xf7, 0x54, 0xea, 0x0d, 0x37, 0xfd, 0xe5, 0x67, 0xef, 0xa7, 0x01, 0x27, 0x94, 0xdf, 0xbf, 0xf5,
0x9e, 0x59, 0x7b, 0x60, 0x93, 0x65, 0x34, 0x31, 0x3e, 0xf7, 0x62, 0xaa, 0xbe, 0x66, 0xa1, 0x1b,
0xf1, 0xc4, 0xcb, 0x29, 0x87, 0x32, 0xa9, 0x44, 0x96, 0x10, 0x96, 0x1f, 0xbb, 0x57, 0x09, 0x9d,
0xfc, 0x89, 0xc7, 0x84, 0x39, 0x71, 0xf5, 0xd2, 0xff, 0x34, 0xda, 0xe3, 0x94, 0xb0, 0x7e, 0xbe,
0xa6, 0x16, 0xbb, 0x7a, 0x25, 0xf7, 0x63, 0x27, 0xdc, 0xd1, 0xc8, 0xab, 0xbf, 0x01, 0x00, 0x00,
0xff, 0xff, 0x50, 0x0c, 0xfe, 0x32, 0x29, 0x04, 0x00, 0x00,
}

22
vendor/github.com/cespare/xxhash/LICENSE.txt generated vendored Normal file
View file

@ -0,0 +1,22 @@
Copyright (c) 2016 Caleb Spare
MIT License
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

50
vendor/github.com/cespare/xxhash/README.md generated vendored Normal file
View file

@ -0,0 +1,50 @@
# xxhash
[![GoDoc](https://godoc.org/github.com/cespare/xxhash?status.svg)](https://godoc.org/github.com/cespare/xxhash)
xxhash is a Go implementation of the 64-bit
[xxHash](http://cyan4973.github.io/xxHash/) algorithm, XXH64. This is a
high-quality hashing algorithm that is much faster than anything in the Go
standard library.
The API is very small, taking its cue from the other hashing packages in the
standard library:
$ go doc github.com/cespare/xxhash !
package xxhash // import "github.com/cespare/xxhash"
Package xxhash implements the 64-bit variant of xxHash (XXH64) as described
at http://cyan4973.github.io/xxHash/.
func New() hash.Hash64
func Sum64(b []byte) uint64
func Sum64String(s string) uint64
This implementation provides a fast pure-Go implementation and an even faster
assembly implementation for amd64.
## Benchmarks
Here are some quick benchmarks comparing the pure-Go and assembly
implementations of Sum64 against another popular Go XXH64 implementation,
[github.com/OneOfOne/xxhash](https://github.com/OneOfOne/xxhash):
| input size | OneOfOne | cespare (purego) | cespare |
| --- | --- | --- | --- |
| 5 B | 416 MB/s | 720 MB/s | 872 MB/s |
| 100 B | 3980 MB/s | 5013 MB/s | 5252 MB/s |
| 4 KB | 12727 MB/s | 12999 MB/s | 13026 MB/s |
| 10 MB | 9879 MB/s | 10775 MB/s | 10913 MB/s |
These numbers were generated with:
```
$ go test -benchtime 10s -bench '/OneOfOne,'
$ go test -tags purego -benchtime 10s -bench '/xxhash,'
$ go test -benchtime 10s -bench '/xxhash,'
```
## Projects using this package
- [InfluxDB](https://github.com/influxdata/influxdb)
- [Prometheus](https://github.com/prometheus/prometheus)

6
vendor/github.com/cespare/xxhash/go.mod generated vendored Normal file
View file

@ -0,0 +1,6 @@
module github.com/cespare/xxhash
require (
github.com/OneOfOne/xxhash v1.2.2
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72
)

4
vendor/github.com/cespare/xxhash/go.sum generated vendored Normal file
View file

@ -0,0 +1,4 @@
github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE=
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ=
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=

14
vendor/github.com/cespare/xxhash/rotate.go generated vendored Normal file
View file

@ -0,0 +1,14 @@
// +build !go1.9
package xxhash
// TODO(caleb): After Go 1.10 comes out, remove this fallback code.
func rol1(x uint64) uint64 { return (x << 1) | (x >> (64 - 1)) }
func rol7(x uint64) uint64 { return (x << 7) | (x >> (64 - 7)) }
func rol11(x uint64) uint64 { return (x << 11) | (x >> (64 - 11)) }
func rol12(x uint64) uint64 { return (x << 12) | (x >> (64 - 12)) }
func rol18(x uint64) uint64 { return (x << 18) | (x >> (64 - 18)) }
func rol23(x uint64) uint64 { return (x << 23) | (x >> (64 - 23)) }
func rol27(x uint64) uint64 { return (x << 27) | (x >> (64 - 27)) }
func rol31(x uint64) uint64 { return (x << 31) | (x >> (64 - 31)) }

14
vendor/github.com/cespare/xxhash/rotate19.go generated vendored Normal file
View file

@ -0,0 +1,14 @@
// +build go1.9
package xxhash
import "math/bits"
func rol1(x uint64) uint64 { return bits.RotateLeft64(x, 1) }
func rol7(x uint64) uint64 { return bits.RotateLeft64(x, 7) }
func rol11(x uint64) uint64 { return bits.RotateLeft64(x, 11) }
func rol12(x uint64) uint64 { return bits.RotateLeft64(x, 12) }
func rol18(x uint64) uint64 { return bits.RotateLeft64(x, 18) }
func rol23(x uint64) uint64 { return bits.RotateLeft64(x, 23) }
func rol27(x uint64) uint64 { return bits.RotateLeft64(x, 27) }
func rol31(x uint64) uint64 { return bits.RotateLeft64(x, 31) }

168
vendor/github.com/cespare/xxhash/xxhash.go generated vendored Normal file
View file

@ -0,0 +1,168 @@
// Package xxhash implements the 64-bit variant of xxHash (XXH64) as described
// at http://cyan4973.github.io/xxHash/.
package xxhash
import (
"encoding/binary"
"hash"
)
const (
prime1 uint64 = 11400714785074694791
prime2 uint64 = 14029467366897019727
prime3 uint64 = 1609587929392839161
prime4 uint64 = 9650029242287828579
prime5 uint64 = 2870177450012600261
)
// NOTE(caleb): I'm using both consts and vars of the primes. Using consts where
// possible in the Go code is worth a small (but measurable) performance boost
// by avoiding some MOVQs. Vars are needed for the asm and also are useful for
// convenience in the Go code in a few places where we need to intentionally
// avoid constant arithmetic (e.g., v1 := prime1 + prime2 fails because the
// result overflows a uint64).
var (
prime1v = prime1
prime2v = prime2
prime3v = prime3
prime4v = prime4
prime5v = prime5
)
type xxh struct {
v1 uint64
v2 uint64
v3 uint64
v4 uint64
total int
mem [32]byte
n int // how much of mem is used
}
// New creates a new hash.Hash64 that implements the 64-bit xxHash algorithm.
func New() hash.Hash64 {
var x xxh
x.Reset()
return &x
}
func (x *xxh) Reset() {
x.n = 0
x.total = 0
x.v1 = prime1v + prime2
x.v2 = prime2
x.v3 = 0
x.v4 = -prime1v
}
func (x *xxh) Size() int { return 8 }
func (x *xxh) BlockSize() int { return 32 }
// Write adds more data to x. It always returns len(b), nil.
func (x *xxh) Write(b []byte) (n int, err error) {
n = len(b)
x.total += len(b)
if x.n+len(b) < 32 {
// This new data doesn't even fill the current block.
copy(x.mem[x.n:], b)
x.n += len(b)
return
}
if x.n > 0 {
// Finish off the partial block.
copy(x.mem[x.n:], b)
x.v1 = round(x.v1, u64(x.mem[0:8]))
x.v2 = round(x.v2, u64(x.mem[8:16]))
x.v3 = round(x.v3, u64(x.mem[16:24]))
x.v4 = round(x.v4, u64(x.mem[24:32]))
b = b[32-x.n:]
x.n = 0
}
if len(b) >= 32 {
// One or more full blocks left.
b = writeBlocks(x, b)
}
// Store any remaining partial block.
copy(x.mem[:], b)
x.n = len(b)
return
}
func (x *xxh) Sum(b []byte) []byte {
s := x.Sum64()
return append(
b,
byte(s>>56),
byte(s>>48),
byte(s>>40),
byte(s>>32),
byte(s>>24),
byte(s>>16),
byte(s>>8),
byte(s),
)
}
func (x *xxh) Sum64() uint64 {
var h uint64
if x.total >= 32 {
v1, v2, v3, v4 := x.v1, x.v2, x.v3, x.v4
h = rol1(v1) + rol7(v2) + rol12(v3) + rol18(v4)
h = mergeRound(h, v1)
h = mergeRound(h, v2)
h = mergeRound(h, v3)
h = mergeRound(h, v4)
} else {
h = x.v3 + prime5
}
h += uint64(x.total)
i, end := 0, x.n
for ; i+8 <= end; i += 8 {
k1 := round(0, u64(x.mem[i:i+8]))
h ^= k1
h = rol27(h)*prime1 + prime4
}
if i+4 <= end {
h ^= uint64(u32(x.mem[i:i+4])) * prime1
h = rol23(h)*prime2 + prime3
i += 4
}
for i < end {
h ^= uint64(x.mem[i]) * prime5
h = rol11(h) * prime1
i++
}
h ^= h >> 33
h *= prime2
h ^= h >> 29
h *= prime3
h ^= h >> 32
return h
}
func u64(b []byte) uint64 { return binary.LittleEndian.Uint64(b) }
func u32(b []byte) uint32 { return binary.LittleEndian.Uint32(b) }
func round(acc, input uint64) uint64 {
acc += input * prime2
acc = rol31(acc)
acc *= prime1
return acc
}
func mergeRound(acc, val uint64) uint64 {
val = round(0, val)
acc ^= val
acc = acc*prime1 + prime4
return acc
}

12
vendor/github.com/cespare/xxhash/xxhash_amd64.go generated vendored Normal file
View file

@ -0,0 +1,12 @@
// +build !appengine
// +build gc
// +build !purego
package xxhash
// Sum64 computes the 64-bit xxHash digest of b.
//
//go:noescape
func Sum64(b []byte) uint64
func writeBlocks(x *xxh, b []byte) []byte

233
vendor/github.com/cespare/xxhash/xxhash_amd64.s generated vendored Normal file
View file

@ -0,0 +1,233 @@
// +build !appengine
// +build gc
// +build !purego
#include "textflag.h"
// Register allocation:
// AX h
// CX pointer to advance through b
// DX n
// BX loop end
// R8 v1, k1
// R9 v2
// R10 v3
// R11 v4
// R12 tmp
// R13 prime1v
// R14 prime2v
// R15 prime4v
// round reads from and advances the buffer pointer in CX.
// It assumes that R13 has prime1v and R14 has prime2v.
#define round(r) \
MOVQ (CX), R12 \
ADDQ $8, CX \
IMULQ R14, R12 \
ADDQ R12, r \
ROLQ $31, r \
IMULQ R13, r
// mergeRound applies a merge round on the two registers acc and val.
// It assumes that R13 has prime1v, R14 has prime2v, and R15 has prime4v.
#define mergeRound(acc, val) \
IMULQ R14, val \
ROLQ $31, val \
IMULQ R13, val \
XORQ val, acc \
IMULQ R13, acc \
ADDQ R15, acc
// func Sum64(b []byte) uint64
TEXT ·Sum64(SB), NOSPLIT, $0-32
// Load fixed primes.
MOVQ ·prime1v(SB), R13
MOVQ ·prime2v(SB), R14
MOVQ ·prime4v(SB), R15
// Load slice.
MOVQ b_base+0(FP), CX
MOVQ b_len+8(FP), DX
LEAQ (CX)(DX*1), BX
// The first loop limit will be len(b)-32.
SUBQ $32, BX
// Check whether we have at least one block.
CMPQ DX, $32
JLT noBlocks
// Set up initial state (v1, v2, v3, v4).
MOVQ R13, R8
ADDQ R14, R8
MOVQ R14, R9
XORQ R10, R10
XORQ R11, R11
SUBQ R13, R11
// Loop until CX > BX.
blockLoop:
round(R8)
round(R9)
round(R10)
round(R11)
CMPQ CX, BX
JLE blockLoop
MOVQ R8, AX
ROLQ $1, AX
MOVQ R9, R12
ROLQ $7, R12
ADDQ R12, AX
MOVQ R10, R12
ROLQ $12, R12
ADDQ R12, AX
MOVQ R11, R12
ROLQ $18, R12
ADDQ R12, AX
mergeRound(AX, R8)
mergeRound(AX, R9)
mergeRound(AX, R10)
mergeRound(AX, R11)
JMP afterBlocks
noBlocks:
MOVQ ·prime5v(SB), AX
afterBlocks:
ADDQ DX, AX
// Right now BX has len(b)-32, and we want to loop until CX > len(b)-8.
ADDQ $24, BX
CMPQ CX, BX
JG fourByte
wordLoop:
// Calculate k1.
MOVQ (CX), R8
ADDQ $8, CX
IMULQ R14, R8
ROLQ $31, R8
IMULQ R13, R8
XORQ R8, AX
ROLQ $27, AX
IMULQ R13, AX
ADDQ R15, AX
CMPQ CX, BX
JLE wordLoop
fourByte:
ADDQ $4, BX
CMPQ CX, BX
JG singles
MOVL (CX), R8
ADDQ $4, CX
IMULQ R13, R8
XORQ R8, AX
ROLQ $23, AX
IMULQ R14, AX
ADDQ ·prime3v(SB), AX
singles:
ADDQ $4, BX
CMPQ CX, BX
JGE finalize
singlesLoop:
MOVBQZX (CX), R12
ADDQ $1, CX
IMULQ ·prime5v(SB), R12
XORQ R12, AX
ROLQ $11, AX
IMULQ R13, AX
CMPQ CX, BX
JL singlesLoop
finalize:
MOVQ AX, R12
SHRQ $33, R12
XORQ R12, AX
IMULQ R14, AX
MOVQ AX, R12
SHRQ $29, R12
XORQ R12, AX
IMULQ ·prime3v(SB), AX
MOVQ AX, R12
SHRQ $32, R12
XORQ R12, AX
MOVQ AX, ret+24(FP)
RET
// writeBlocks uses the same registers as above except that it uses AX to store
// the x pointer.
// func writeBlocks(x *xxh, b []byte) []byte
TEXT ·writeBlocks(SB), NOSPLIT, $0-56
// Load fixed primes needed for round.
MOVQ ·prime1v(SB), R13
MOVQ ·prime2v(SB), R14
// Load slice.
MOVQ b_base+8(FP), CX
MOVQ CX, ret_base+32(FP) // initialize return base pointer; see NOTE below
MOVQ b_len+16(FP), DX
LEAQ (CX)(DX*1), BX
SUBQ $32, BX
// Load vN from x.
MOVQ x+0(FP), AX
MOVQ 0(AX), R8 // v1
MOVQ 8(AX), R9 // v2
MOVQ 16(AX), R10 // v3
MOVQ 24(AX), R11 // v4
// We don't need to check the loop condition here; this function is
// always called with at least one block of data to process.
blockLoop:
round(R8)
round(R9)
round(R10)
round(R11)
CMPQ CX, BX
JLE blockLoop
// Copy vN back to x.
MOVQ R8, 0(AX)
MOVQ R9, 8(AX)
MOVQ R10, 16(AX)
MOVQ R11, 24(AX)
// Construct return slice.
// NOTE: It's important that we don't construct a slice that has a base
// pointer off the end of the original slice, as in Go 1.7+ this will
// cause runtime crashes. (See discussion in, for example,
// https://github.com/golang/go/issues/16772.)
// Therefore, we calculate the length/cap first, and if they're zero, we
// keep the old base. This is what the compiler does as well if you
// write code like
// b = b[len(b):]
// New length is 32 - (CX - BX) -> BX+32 - CX.
ADDQ $32, BX
SUBQ CX, BX
JZ afterSetBase
MOVQ CX, ret_base+32(FP)
afterSetBase:
MOVQ BX, ret_len+40(FP)
MOVQ BX, ret_cap+48(FP) // set cap == len
RET

75
vendor/github.com/cespare/xxhash/xxhash_other.go generated vendored Normal file
View file

@ -0,0 +1,75 @@
// +build !amd64 appengine !gc purego
package xxhash
// Sum64 computes the 64-bit xxHash digest of b.
func Sum64(b []byte) uint64 {
// A simpler version would be
// x := New()
// x.Write(b)
// return x.Sum64()
// but this is faster, particularly for small inputs.
n := len(b)
var h uint64
if n >= 32 {
v1 := prime1v + prime2
v2 := prime2
v3 := uint64(0)
v4 := -prime1v
for len(b) >= 32 {
v1 = round(v1, u64(b[0:8:len(b)]))
v2 = round(v2, u64(b[8:16:len(b)]))
v3 = round(v3, u64(b[16:24:len(b)]))
v4 = round(v4, u64(b[24:32:len(b)]))
b = b[32:len(b):len(b)]
}
h = rol1(v1) + rol7(v2) + rol12(v3) + rol18(v4)
h = mergeRound(h, v1)
h = mergeRound(h, v2)
h = mergeRound(h, v3)
h = mergeRound(h, v4)
} else {
h = prime5
}
h += uint64(n)
i, end := 0, len(b)
for ; i+8 <= end; i += 8 {
k1 := round(0, u64(b[i:i+8:len(b)]))
h ^= k1
h = rol27(h)*prime1 + prime4
}
if i+4 <= end {
h ^= uint64(u32(b[i:i+4:len(b)])) * prime1
h = rol23(h)*prime2 + prime3
i += 4
}
for ; i < end; i++ {
h ^= uint64(b[i]) * prime5
h = rol11(h) * prime1
}
h ^= h >> 33
h *= prime2
h ^= h >> 29
h *= prime3
h ^= h >> 32
return h
}
func writeBlocks(x *xxh, b []byte) []byte {
v1, v2, v3, v4 := x.v1, x.v2, x.v3, x.v4
for len(b) >= 32 {
v1 = round(v1, u64(b[0:8:len(b)]))
v2 = round(v2, u64(b[8:16:len(b)]))
v3 = round(v3, u64(b[16:24:len(b)]))
v4 = round(v4, u64(b[24:32:len(b)]))
b = b[32:len(b):len(b)]
}
x.v1, x.v2, x.v3, x.v4 = v1, v2, v3, v4
return b
}

10
vendor/github.com/cespare/xxhash/xxhash_safe.go generated vendored Normal file
View file

@ -0,0 +1,10 @@
// +build appengine
// This file contains the safe implementations of otherwise unsafe-using code.
package xxhash
// Sum64String computes the 64-bit xxHash digest of s.
func Sum64String(s string) uint64 {
return Sum64([]byte(s))
}

30
vendor/github.com/cespare/xxhash/xxhash_unsafe.go generated vendored Normal file
View file

@ -0,0 +1,30 @@
// +build !appengine
// This file encapsulates usage of unsafe.
// xxhash_safe.go contains the safe implementations.
package xxhash
import (
"reflect"
"unsafe"
)
// Sum64String computes the 64-bit xxHash digest of s.
// It may be faster than Sum64([]byte(s)) by avoiding a copy.
//
// TODO(caleb): Consider removing this if an optimization is ever added to make
// it unnecessary: https://golang.org/issue/2205.
//
// TODO(caleb): We still have a function call; we could instead write Go/asm
// copies of Sum64 for strings to squeeze out a bit more speed.
func Sum64String(s string) uint64 {
// See https://groups.google.com/d/msg/golang-nuts/dcjzJy-bSpw/tcZYBzQqAQAJ
// for some discussion about this unsafe conversion.
var b []byte
bh := (*reflect.SliceHeader)(unsafe.Pointer(&b))
bh.Data = (*reflect.StringHeader)(unsafe.Pointer(&s)).Data
bh.Len = len(s)
bh.Cap = len(s)
return Sum64(b)
}

201
vendor/github.com/cncf/udpa/go/LICENSE generated vendored Normal file
View file

@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
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.

View file

@ -0,0 +1,129 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/data/orca/v1/orca_load_report.proto
package udpa_data_orca_v1
import (
fmt "fmt"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type OrcaLoadReport struct {
CpuUtilization float64 `protobuf:"fixed64,1,opt,name=cpu_utilization,json=cpuUtilization,proto3" json:"cpu_utilization,omitempty"`
MemUtilization float64 `protobuf:"fixed64,2,opt,name=mem_utilization,json=memUtilization,proto3" json:"mem_utilization,omitempty"`
Rps uint64 `protobuf:"varint,3,opt,name=rps,proto3" json:"rps,omitempty"`
RequestCost map[string]float64 `protobuf:"bytes,4,rep,name=request_cost,json=requestCost,proto3" json:"request_cost,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"`
Utilization map[string]float64 `protobuf:"bytes,5,rep,name=utilization,proto3" json:"utilization,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *OrcaLoadReport) Reset() { *m = OrcaLoadReport{} }
func (m *OrcaLoadReport) String() string { return proto.CompactTextString(m) }
func (*OrcaLoadReport) ProtoMessage() {}
func (*OrcaLoadReport) Descriptor() ([]byte, []int) {
return fileDescriptor_27edb21f16098bf0, []int{0}
}
func (m *OrcaLoadReport) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrcaLoadReport.Unmarshal(m, b)
}
func (m *OrcaLoadReport) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_OrcaLoadReport.Marshal(b, m, deterministic)
}
func (m *OrcaLoadReport) XXX_Merge(src proto.Message) {
xxx_messageInfo_OrcaLoadReport.Merge(m, src)
}
func (m *OrcaLoadReport) XXX_Size() int {
return xxx_messageInfo_OrcaLoadReport.Size(m)
}
func (m *OrcaLoadReport) XXX_DiscardUnknown() {
xxx_messageInfo_OrcaLoadReport.DiscardUnknown(m)
}
var xxx_messageInfo_OrcaLoadReport proto.InternalMessageInfo
func (m *OrcaLoadReport) GetCpuUtilization() float64 {
if m != nil {
return m.CpuUtilization
}
return 0
}
func (m *OrcaLoadReport) GetMemUtilization() float64 {
if m != nil {
return m.MemUtilization
}
return 0
}
func (m *OrcaLoadReport) GetRps() uint64 {
if m != nil {
return m.Rps
}
return 0
}
func (m *OrcaLoadReport) GetRequestCost() map[string]float64 {
if m != nil {
return m.RequestCost
}
return nil
}
func (m *OrcaLoadReport) GetUtilization() map[string]float64 {
if m != nil {
return m.Utilization
}
return nil
}
func init() {
proto.RegisterType((*OrcaLoadReport)(nil), "udpa.data.orca.v1.OrcaLoadReport")
proto.RegisterMapType((map[string]float64)(nil), "udpa.data.orca.v1.OrcaLoadReport.RequestCostEntry")
proto.RegisterMapType((map[string]float64)(nil), "udpa.data.orca.v1.OrcaLoadReport.UtilizationEntry")
}
func init() {
proto.RegisterFile("udpa/data/orca/v1/orca_load_report.proto", fileDescriptor_27edb21f16098bf0)
}
var fileDescriptor_27edb21f16098bf0 = []byte{
// 341 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x92, 0x4f, 0x4b, 0xfb, 0x30,
0x1c, 0xc6, 0x7f, 0xd9, 0x9f, 0x1f, 0x2c, 0xd5, 0x39, 0xab, 0xe0, 0x1c, 0x1e, 0xa6, 0x07, 0xa9,
0x1e, 0x52, 0x36, 0x2f, 0xb2, 0x83, 0x42, 0x65, 0x37, 0xc1, 0x11, 0xd8, 0xb9, 0x64, 0x6d, 0xd0,
0x62, 0xbb, 0xc4, 0x34, 0x29, 0x4c, 0xbc, 0xfa, 0x26, 0x7c, 0x95, 0x9e, 0x77, 0x92, 0x24, 0x8e,
0xb5, 0xdb, 0x65, 0xf6, 0xd2, 0x6f, 0xc2, 0xf3, 0x3c, 0x79, 0x3e, 0x21, 0xd0, 0x53, 0x31, 0x27,
0x7e, 0x4c, 0x24, 0xf1, 0x99, 0x88, 0x88, 0x5f, 0x0c, 0xcc, 0x3f, 0x4c, 0x19, 0x89, 0x43, 0x41,
0x39, 0x13, 0x12, 0x71, 0xc1, 0x24, 0x73, 0x0f, 0xb5, 0x12, 0x69, 0x25, 0xd2, 0x0a, 0x54, 0x0c,
0x7a, 0x27, 0x05, 0x49, 0x93, 0x98, 0x48, 0xea, 0xaf, 0x06, 0xab, 0xbd, 0xf8, 0x6c, 0xc0, 0xf6,
0x93, 0x88, 0xc8, 0x23, 0x23, 0x31, 0x36, 0x21, 0xee, 0x18, 0x1e, 0x44, 0x5c, 0x85, 0x4a, 0x26,
0x69, 0xf2, 0x4e, 0x64, 0xc2, 0xe6, 0x5d, 0xd0, 0x07, 0x1e, 0x08, 0xce, 0x96, 0x81, 0xe3, 0xb6,
0xae, 0xfe, 0xfd, 0x7e, 0x66, 0x75, 0x6a, 0xe7, 0xef, 0x7b, 0xdc, 0x8e, 0xb8, 0x9a, 0xae, 0x3d,
0x3a, 0x26, 0xa3, 0x59, 0x25, 0xa6, 0xb6, 0x4b, 0x4c, 0x46, 0xb3, 0x72, 0x4c, 0x07, 0xd6, 0x05,
0xcf, 0xbb, 0xf5, 0x3e, 0xf0, 0x1a, 0x58, 0x8f, 0xee, 0x14, 0xee, 0x09, 0xfa, 0xa6, 0x68, 0x2e,
0xc3, 0x88, 0xe5, 0xb2, 0xdb, 0xe8, 0xd7, 0x3d, 0x67, 0x38, 0x44, 0x5b, 0xd4, 0xa8, 0x0a, 0x86,
0xb0, 0x75, 0x3d, 0xb0, 0x5c, 0x8e, 0xe7, 0x52, 0x2c, 0xb0, 0x23, 0xd6, 0x3b, 0xee, 0x07, 0x74,
0xca, 0x5d, 0x9b, 0xbb, 0xa6, 0x96, 0xca, 0x9a, 0xd4, 0xe0, 0x72, 0x19, 0x74, 0xbe, 0xc0, 0xfe,
0x75, 0x15, 0x72, 0xb5, 0xb5, 0x26, 0x2d, 0x1f, 0xd7, 0xbb, 0x83, 0x9d, 0xcd, 0x7a, 0x1a, 0xfd,
0x95, 0x2e, 0xcc, 0xe5, 0xb7, 0xb0, 0x1e, 0xdd, 0x63, 0xd8, 0x2c, 0x48, 0xaa, 0xa8, 0xbd, 0x49,
0x6c, 0x17, 0xa3, 0xda, 0x2d, 0xd0, 0xfe, 0xcd, 0x22, 0x7f, 0xf1, 0x07, 0x23, 0x78, 0x1e, 0xb1,
0x0c, 0x3d, 0x27, 0xf2, 0x45, 0xcd, 0x2c, 0xf4, 0x16, 0x79, 0x70, 0x54, 0x45, 0x9f, 0xe8, 0x17,
0x34, 0x01, 0xb3, 0xff, 0xe6, 0x29, 0xdd, 0xfc, 0x04, 0x00, 0x00, 0xff, 0xff, 0x71, 0x13, 0xd1,
0xd4, 0xa2, 0x02, 0x00, 0x00,
}

View file

@ -0,0 +1,134 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/data/orca/v1/orca_load_report.proto
package udpa_data_orca_v1
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _orca_load_report_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on OrcaLoadReport with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *OrcaLoadReport) Validate() error {
if m == nil {
return nil
}
if m.GetCpuUtilization() > 1 {
return OrcaLoadReportValidationError{
field: "CpuUtilization",
reason: "value must be less than or equal to 1",
}
}
if m.GetMemUtilization() > 1 {
return OrcaLoadReportValidationError{
field: "MemUtilization",
reason: "value must be less than or equal to 1",
}
}
// no validation rules for Rps
// no validation rules for RequestCost
for key, val := range m.GetUtilization() {
_ = val
// no validation rules for Utilization[key]
if val > 1 {
return OrcaLoadReportValidationError{
field: fmt.Sprintf("Utilization[%v]", key),
reason: "value must be less than or equal to 1",
}
}
}
return nil
}
// OrcaLoadReportValidationError is the validation error returned by
// OrcaLoadReport.Validate if the designated constraints aren't met.
type OrcaLoadReportValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e OrcaLoadReportValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e OrcaLoadReportValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e OrcaLoadReportValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e OrcaLoadReportValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e OrcaLoadReportValidationError) ErrorName() string { return "OrcaLoadReportValidationError" }
// Error satisfies the builtin error interface
func (e OrcaLoadReportValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sOrcaLoadReport.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = OrcaLoadReportValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = OrcaLoadReportValidationError{}

View file

@ -0,0 +1,92 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/type/v1/typed_struct.proto
package udpa_type_v1
import (
fmt "fmt"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
_struct "github.com/golang/protobuf/ptypes/struct"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type TypedStruct struct {
TypeUrl string `protobuf:"bytes,1,opt,name=type_url,json=typeUrl,proto3" json:"type_url,omitempty"`
Value *_struct.Struct `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TypedStruct) Reset() { *m = TypedStruct{} }
func (m *TypedStruct) String() string { return proto.CompactTextString(m) }
func (*TypedStruct) ProtoMessage() {}
func (*TypedStruct) Descriptor() ([]byte, []int) {
return fileDescriptor_098110268becad8a, []int{0}
}
func (m *TypedStruct) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TypedStruct.Unmarshal(m, b)
}
func (m *TypedStruct) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TypedStruct.Marshal(b, m, deterministic)
}
func (m *TypedStruct) XXX_Merge(src proto.Message) {
xxx_messageInfo_TypedStruct.Merge(m, src)
}
func (m *TypedStruct) XXX_Size() int {
return xxx_messageInfo_TypedStruct.Size(m)
}
func (m *TypedStruct) XXX_DiscardUnknown() {
xxx_messageInfo_TypedStruct.DiscardUnknown(m)
}
var xxx_messageInfo_TypedStruct proto.InternalMessageInfo
func (m *TypedStruct) GetTypeUrl() string {
if m != nil {
return m.TypeUrl
}
return ""
}
func (m *TypedStruct) GetValue() *_struct.Struct {
if m != nil {
return m.Value
}
return nil
}
func init() {
proto.RegisterType((*TypedStruct)(nil), "udpa.type.v1.TypedStruct")
}
func init() { proto.RegisterFile("udpa/type/v1/typed_struct.proto", fileDescriptor_098110268becad8a) }
var fileDescriptor_098110268becad8a = []byte{
// 192 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x2f, 0x4d, 0x29, 0x48,
0xd4, 0x2f, 0xa9, 0x2c, 0x48, 0xd5, 0x2f, 0x33, 0x04, 0xd3, 0x29, 0xf1, 0xc5, 0x25, 0x45, 0xa5,
0xc9, 0x25, 0x7a, 0x05, 0x45, 0xf9, 0x25, 0xf9, 0x42, 0x3c, 0x20, 0x05, 0x7a, 0x20, 0x09, 0xbd,
0x32, 0x43, 0x29, 0xf1, 0xb2, 0xc4, 0x9c, 0xcc, 0x94, 0xc4, 0x92, 0x54, 0x7d, 0x18, 0x03, 0xa2,
0x4c, 0x4a, 0x26, 0x3d, 0x3f, 0x3f, 0x3d, 0x27, 0x55, 0x1f, 0xcc, 0x4b, 0x2a, 0x4d, 0xd3, 0x47,
0x36, 0x44, 0x29, 0x9c, 0x8b, 0x3b, 0x04, 0x64, 0x74, 0x30, 0x58, 0x50, 0x48, 0x92, 0x8b, 0x03,
0x64, 0x60, 0x7c, 0x69, 0x51, 0x8e, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x67, 0x10, 0x3b, 0x88, 0x1f,
0x5a, 0x94, 0x23, 0xa4, 0xcb, 0xc5, 0x5a, 0x96, 0x98, 0x53, 0x9a, 0x2a, 0xc1, 0xa4, 0xc0, 0xa8,
0xc1, 0x6d, 0x24, 0xae, 0x07, 0x31, 0x57, 0x0f, 0x66, 0xae, 0x1e, 0xc4, 0x88, 0x20, 0x88, 0x2a,
0x27, 0x23, 0x2e, 0x99, 0xe4, 0xfc, 0x5c, 0xbd, 0xf4, 0xcc, 0x92, 0x8c, 0xd2, 0x24, 0x3d, 0xb0,
0x53, 0x91, 0xdd, 0xeb, 0x24, 0x80, 0x64, 0x6d, 0x00, 0xc8, 0x88, 0x00, 0xc6, 0x24, 0x36, 0xb0,
0x59, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0x68, 0x7c, 0xa9, 0xb5, 0xfb, 0x00, 0x00, 0x00,
}

View file

@ -0,0 +1,114 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/type/v1/typed_struct.proto
package udpa_type_v1
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _typed_struct_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on TypedStruct with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *TypedStruct) Validate() error {
if m == nil {
return nil
}
// no validation rules for TypeUrl
if v, ok := interface{}(m.GetValue()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TypedStructValidationError{
field: "Value",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// TypedStructValidationError is the validation error returned by
// TypedStruct.Validate if the designated constraints aren't met.
type TypedStructValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e TypedStructValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e TypedStructValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e TypedStructValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e TypedStructValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e TypedStructValidationError) ErrorName() string { return "TypedStructValidationError" }
// Error satisfies the builtin error interface
func (e TypedStructValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sTypedStruct.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = TypedStructValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = TypedStructValidationError{}

201
vendor/github.com/cncf/xds/go/LICENSE generated vendored Normal file
View file

@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
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.

View file

@ -0,0 +1,231 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/annotations/migrate.proto
package udpa_annotations
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
descriptor "github.com/golang/protobuf/protoc-gen-go/descriptor"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type MigrateAnnotation struct {
Rename string `protobuf:"bytes,1,opt,name=rename,proto3" json:"rename,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *MigrateAnnotation) Reset() { *m = MigrateAnnotation{} }
func (m *MigrateAnnotation) String() string { return proto.CompactTextString(m) }
func (*MigrateAnnotation) ProtoMessage() {}
func (*MigrateAnnotation) Descriptor() ([]byte, []int) {
return fileDescriptor_ba8191732d0e246d, []int{0}
}
func (m *MigrateAnnotation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MigrateAnnotation.Unmarshal(m, b)
}
func (m *MigrateAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MigrateAnnotation.Marshal(b, m, deterministic)
}
func (m *MigrateAnnotation) XXX_Merge(src proto.Message) {
xxx_messageInfo_MigrateAnnotation.Merge(m, src)
}
func (m *MigrateAnnotation) XXX_Size() int {
return xxx_messageInfo_MigrateAnnotation.Size(m)
}
func (m *MigrateAnnotation) XXX_DiscardUnknown() {
xxx_messageInfo_MigrateAnnotation.DiscardUnknown(m)
}
var xxx_messageInfo_MigrateAnnotation proto.InternalMessageInfo
func (m *MigrateAnnotation) GetRename() string {
if m != nil {
return m.Rename
}
return ""
}
type FieldMigrateAnnotation struct {
Rename string `protobuf:"bytes,1,opt,name=rename,proto3" json:"rename,omitempty"`
OneofPromotion string `protobuf:"bytes,2,opt,name=oneof_promotion,json=oneofPromotion,proto3" json:"oneof_promotion,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *FieldMigrateAnnotation) Reset() { *m = FieldMigrateAnnotation{} }
func (m *FieldMigrateAnnotation) String() string { return proto.CompactTextString(m) }
func (*FieldMigrateAnnotation) ProtoMessage() {}
func (*FieldMigrateAnnotation) Descriptor() ([]byte, []int) {
return fileDescriptor_ba8191732d0e246d, []int{1}
}
func (m *FieldMigrateAnnotation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FieldMigrateAnnotation.Unmarshal(m, b)
}
func (m *FieldMigrateAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_FieldMigrateAnnotation.Marshal(b, m, deterministic)
}
func (m *FieldMigrateAnnotation) XXX_Merge(src proto.Message) {
xxx_messageInfo_FieldMigrateAnnotation.Merge(m, src)
}
func (m *FieldMigrateAnnotation) XXX_Size() int {
return xxx_messageInfo_FieldMigrateAnnotation.Size(m)
}
func (m *FieldMigrateAnnotation) XXX_DiscardUnknown() {
xxx_messageInfo_FieldMigrateAnnotation.DiscardUnknown(m)
}
var xxx_messageInfo_FieldMigrateAnnotation proto.InternalMessageInfo
func (m *FieldMigrateAnnotation) GetRename() string {
if m != nil {
return m.Rename
}
return ""
}
func (m *FieldMigrateAnnotation) GetOneofPromotion() string {
if m != nil {
return m.OneofPromotion
}
return ""
}
type FileMigrateAnnotation struct {
MoveToPackage string `protobuf:"bytes,2,opt,name=move_to_package,json=moveToPackage,proto3" json:"move_to_package,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *FileMigrateAnnotation) Reset() { *m = FileMigrateAnnotation{} }
func (m *FileMigrateAnnotation) String() string { return proto.CompactTextString(m) }
func (*FileMigrateAnnotation) ProtoMessage() {}
func (*FileMigrateAnnotation) Descriptor() ([]byte, []int) {
return fileDescriptor_ba8191732d0e246d, []int{2}
}
func (m *FileMigrateAnnotation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FileMigrateAnnotation.Unmarshal(m, b)
}
func (m *FileMigrateAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_FileMigrateAnnotation.Marshal(b, m, deterministic)
}
func (m *FileMigrateAnnotation) XXX_Merge(src proto.Message) {
xxx_messageInfo_FileMigrateAnnotation.Merge(m, src)
}
func (m *FileMigrateAnnotation) XXX_Size() int {
return xxx_messageInfo_FileMigrateAnnotation.Size(m)
}
func (m *FileMigrateAnnotation) XXX_DiscardUnknown() {
xxx_messageInfo_FileMigrateAnnotation.DiscardUnknown(m)
}
var xxx_messageInfo_FileMigrateAnnotation proto.InternalMessageInfo
func (m *FileMigrateAnnotation) GetMoveToPackage() string {
if m != nil {
return m.MoveToPackage
}
return ""
}
var E_MessageMigrate = &proto.ExtensionDesc{
ExtendedType: (*descriptor.MessageOptions)(nil),
ExtensionType: (*MigrateAnnotation)(nil),
Field: 171962766,
Name: "udpa.annotations.message_migrate",
Tag: "bytes,171962766,opt,name=message_migrate",
Filename: "udpa/annotations/migrate.proto",
}
var E_FieldMigrate = &proto.ExtensionDesc{
ExtendedType: (*descriptor.FieldOptions)(nil),
ExtensionType: (*FieldMigrateAnnotation)(nil),
Field: 171962766,
Name: "udpa.annotations.field_migrate",
Tag: "bytes,171962766,opt,name=field_migrate",
Filename: "udpa/annotations/migrate.proto",
}
var E_EnumMigrate = &proto.ExtensionDesc{
ExtendedType: (*descriptor.EnumOptions)(nil),
ExtensionType: (*MigrateAnnotation)(nil),
Field: 171962766,
Name: "udpa.annotations.enum_migrate",
Tag: "bytes,171962766,opt,name=enum_migrate",
Filename: "udpa/annotations/migrate.proto",
}
var E_EnumValueMigrate = &proto.ExtensionDesc{
ExtendedType: (*descriptor.EnumValueOptions)(nil),
ExtensionType: (*MigrateAnnotation)(nil),
Field: 171962766,
Name: "udpa.annotations.enum_value_migrate",
Tag: "bytes,171962766,opt,name=enum_value_migrate",
Filename: "udpa/annotations/migrate.proto",
}
var E_FileMigrate = &proto.ExtensionDesc{
ExtendedType: (*descriptor.FileOptions)(nil),
ExtensionType: (*FileMigrateAnnotation)(nil),
Field: 171962766,
Name: "udpa.annotations.file_migrate",
Tag: "bytes,171962766,opt,name=file_migrate",
Filename: "udpa/annotations/migrate.proto",
}
func init() {
proto.RegisterType((*MigrateAnnotation)(nil), "udpa.annotations.MigrateAnnotation")
proto.RegisterType((*FieldMigrateAnnotation)(nil), "udpa.annotations.FieldMigrateAnnotation")
proto.RegisterType((*FileMigrateAnnotation)(nil), "udpa.annotations.FileMigrateAnnotation")
proto.RegisterExtension(E_MessageMigrate)
proto.RegisterExtension(E_FieldMigrate)
proto.RegisterExtension(E_EnumMigrate)
proto.RegisterExtension(E_EnumValueMigrate)
proto.RegisterExtension(E_FileMigrate)
}
func init() { proto.RegisterFile("udpa/annotations/migrate.proto", fileDescriptor_ba8191732d0e246d) }
var fileDescriptor_ba8191732d0e246d = []byte{
// 349 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0xcd, 0x4a, 0xfb, 0x40,
0x14, 0xc5, 0xe9, 0x7f, 0x51, 0xf8, 0x4f, 0x3f, 0x0d, 0x58, 0x8a, 0xf8, 0x51, 0x2b, 0xd8, 0x82,
0x30, 0x01, 0xdd, 0x75, 0x23, 0x2e, 0xec, 0xae, 0x58, 0x83, 0x08, 0xae, 0xc2, 0xb4, 0xbd, 0x09,
0xa1, 0x99, 0xb9, 0x43, 0x32, 0xa9, 0x6f, 0xe1, 0x4b, 0xfa, 0x20, 0xca, 0x4c, 0x92, 0xb6, 0x38,
0x41, 0xa4, 0xcb, 0x9c, 0x7b, 0xef, 0xf9, 0xe5, 0x1c, 0x86, 0x9c, 0x67, 0x2b, 0xc9, 0x5c, 0x26,
0x04, 0x2a, 0xa6, 0x22, 0x14, 0xa9, 0xcb, 0xa3, 0x30, 0x61, 0x0a, 0xa8, 0x4c, 0x50, 0xa1, 0xd3,
0xd5, 0x73, 0xba, 0x37, 0x3f, 0x19, 0x84, 0x88, 0x61, 0x0c, 0xae, 0x99, 0x2f, 0xb2, 0xc0, 0x5d,
0x41, 0xba, 0x4c, 0x22, 0xa9, 0x30, 0xc9, 0x6f, 0x86, 0x37, 0xe4, 0x68, 0x96, 0x9b, 0x3c, 0x6c,
0xef, 0x9c, 0x1e, 0xa9, 0x27, 0x20, 0x18, 0x87, 0x7e, 0x6d, 0x50, 0x1b, 0xff, 0xf7, 0x8a, 0xaf,
0xe1, 0x1b, 0xe9, 0x4d, 0x23, 0x88, 0x57, 0x7f, 0xbe, 0x70, 0x46, 0xa4, 0x83, 0x02, 0x30, 0xf0,
0x65, 0x82, 0x1c, 0xf5, 0x6a, 0xff, 0x9f, 0x59, 0x68, 0x1b, 0x79, 0x5e, 0xaa, 0xc3, 0x7b, 0x72,
0x3c, 0x8d, 0x62, 0xb0, 0x9d, 0xaf, 0x49, 0x87, 0xe3, 0x06, 0x7c, 0x85, 0xbe, 0x64, 0xcb, 0x35,
0x0b, 0xa1, 0x70, 0x68, 0x69, 0xf9, 0x05, 0xe7, 0xb9, 0x38, 0x91, 0xa4, 0xc3, 0x21, 0x4d, 0x59,
0x08, 0x7e, 0xd1, 0x8a, 0x73, 0x41, 0xf3, 0xf8, 0xb4, 0x8c, 0x4f, 0x67, 0xf9, 0xc6, 0x93, 0x34,
0xf5, 0xf4, 0x3f, 0x3e, 0xbf, 0x9e, 0x07, 0xb5, 0x71, 0xe3, 0xf6, 0x8a, 0xfe, 0xac, 0x8e, 0x5a,
0x7f, 0xe2, 0xb5, 0x0b, 0xff, 0x62, 0x32, 0x41, 0xd2, 0x0a, 0x74, 0x1b, 0x5b, 0xde, 0x99, 0xc5,
0x33, 0x6d, 0x59, 0xb4, 0xb1, 0x4d, 0xab, 0xae, 0xd5, 0x6b, 0x06, 0x7b, 0xfa, 0x24, 0x24, 0x4d,
0x10, 0x19, 0xdf, 0xf2, 0x4e, 0x2d, 0xde, 0xa3, 0xc8, 0xf8, 0x61, 0xe1, 0x1a, 0xda, 0xb9, 0x04,
0xbd, 0x13, 0xc7, 0x80, 0x36, 0x2c, 0xce, 0x76, 0x75, 0x5e, 0x56, 0xe2, 0x5e, 0xf5, 0xce, 0x61,
0xcc, 0x2e, 0x94, 0xf7, 0x25, 0x78, 0x4d, 0x9a, 0x41, 0x14, 0xc3, 0x2f, 0x09, 0xf5, 0x23, 0xb1,
0x68, 0xa3, 0xaa, 0x42, 0x2b, 0x1e, 0x93, 0xd7, 0x08, 0x76, 0xf2, 0xa2, 0x6e, 0x4c, 0xef, 0xbe,
0x03, 0x00, 0x00, 0xff, 0xff, 0x62, 0x65, 0xc8, 0x45, 0x57, 0x03, 0x00, 0x00,
}

View file

@ -0,0 +1,246 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/annotations/migrate.proto
package udpa_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _migrate_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on MigrateAnnotation with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *MigrateAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for Rename
return nil
}
// MigrateAnnotationValidationError is the validation error returned by
// MigrateAnnotation.Validate if the designated constraints aren't met.
type MigrateAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e MigrateAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e MigrateAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e MigrateAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e MigrateAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e MigrateAnnotationValidationError) ErrorName() string {
return "MigrateAnnotationValidationError"
}
// Error satisfies the builtin error interface
func (e MigrateAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sMigrateAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = MigrateAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = MigrateAnnotationValidationError{}
// Validate checks the field values on FieldMigrateAnnotation with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *FieldMigrateAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for Rename
// no validation rules for OneofPromotion
return nil
}
// FieldMigrateAnnotationValidationError is the validation error returned by
// FieldMigrateAnnotation.Validate if the designated constraints aren't met.
type FieldMigrateAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e FieldMigrateAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e FieldMigrateAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e FieldMigrateAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e FieldMigrateAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e FieldMigrateAnnotationValidationError) ErrorName() string {
return "FieldMigrateAnnotationValidationError"
}
// Error satisfies the builtin error interface
func (e FieldMigrateAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sFieldMigrateAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = FieldMigrateAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = FieldMigrateAnnotationValidationError{}
// Validate checks the field values on FileMigrateAnnotation with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *FileMigrateAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for MoveToPackage
return nil
}
// FileMigrateAnnotationValidationError is the validation error returned by
// FileMigrateAnnotation.Validate if the designated constraints aren't met.
type FileMigrateAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e FileMigrateAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e FileMigrateAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e FileMigrateAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e FileMigrateAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e FileMigrateAnnotationValidationError) ErrorName() string {
return "FileMigrateAnnotationValidationError"
}
// Error satisfies the builtin error interface
func (e FileMigrateAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sFileMigrateAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = FileMigrateAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = FileMigrateAnnotationValidationError{}

View file

@ -0,0 +1,109 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/annotations/security.proto
package udpa_annotations
import (
fmt "fmt"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
descriptor "github.com/golang/protobuf/protoc-gen-go/descriptor"
_ "github.com/golang/protobuf/ptypes/any"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type FieldSecurityAnnotation struct {
ConfigureForUntrustedDownstream bool `protobuf:"varint,1,opt,name=configure_for_untrusted_downstream,json=configureForUntrustedDownstream,proto3" json:"configure_for_untrusted_downstream,omitempty"`
ConfigureForUntrustedUpstream bool `protobuf:"varint,2,opt,name=configure_for_untrusted_upstream,json=configureForUntrustedUpstream,proto3" json:"configure_for_untrusted_upstream,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *FieldSecurityAnnotation) Reset() { *m = FieldSecurityAnnotation{} }
func (m *FieldSecurityAnnotation) String() string { return proto.CompactTextString(m) }
func (*FieldSecurityAnnotation) ProtoMessage() {}
func (*FieldSecurityAnnotation) Descriptor() ([]byte, []int) {
return fileDescriptor_43b150013eccfb0a, []int{0}
}
func (m *FieldSecurityAnnotation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FieldSecurityAnnotation.Unmarshal(m, b)
}
func (m *FieldSecurityAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_FieldSecurityAnnotation.Marshal(b, m, deterministic)
}
func (m *FieldSecurityAnnotation) XXX_Merge(src proto.Message) {
xxx_messageInfo_FieldSecurityAnnotation.Merge(m, src)
}
func (m *FieldSecurityAnnotation) XXX_Size() int {
return xxx_messageInfo_FieldSecurityAnnotation.Size(m)
}
func (m *FieldSecurityAnnotation) XXX_DiscardUnknown() {
xxx_messageInfo_FieldSecurityAnnotation.DiscardUnknown(m)
}
var xxx_messageInfo_FieldSecurityAnnotation proto.InternalMessageInfo
func (m *FieldSecurityAnnotation) GetConfigureForUntrustedDownstream() bool {
if m != nil {
return m.ConfigureForUntrustedDownstream
}
return false
}
func (m *FieldSecurityAnnotation) GetConfigureForUntrustedUpstream() bool {
if m != nil {
return m.ConfigureForUntrustedUpstream
}
return false
}
var E_Security = &proto.ExtensionDesc{
ExtendedType: (*descriptor.FieldOptions)(nil),
ExtensionType: (*FieldSecurityAnnotation)(nil),
Field: 11122993,
Name: "udpa.annotations.security",
Tag: "bytes,11122993,opt,name=security",
Filename: "udpa/annotations/security.proto",
}
func init() {
proto.RegisterType((*FieldSecurityAnnotation)(nil), "udpa.annotations.FieldSecurityAnnotation")
proto.RegisterExtension(E_Security)
}
func init() { proto.RegisterFile("udpa/annotations/security.proto", fileDescriptor_43b150013eccfb0a) }
var fileDescriptor_43b150013eccfb0a = []byte{
// 276 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x90, 0xb1, 0x4a, 0x03, 0x31,
0x18, 0xc7, 0xb9, 0x82, 0xe5, 0x88, 0x8b, 0xdc, 0xd2, 0x5a, 0x38, 0x7a, 0x74, 0xaa, 0x4b, 0x02,
0xba, 0xb9, 0x29, 0x52, 0x07, 0x07, 0xa1, 0xd2, 0xf9, 0x48, 0x2f, 0xb9, 0x23, 0x70, 0xe6, 0x0b,
0xc9, 0x17, 0xc5, 0xcd, 0xa7, 0x71, 0x15, 0x57, 0x9f, 0xc0, 0xd5, 0x57, 0xf1, 0x09, 0xc4, 0x5c,
0xee, 0x90, 0x6a, 0xb7, 0x84, 0xef, 0xf7, 0xfd, 0x92, 0xff, 0x9f, 0xcc, 0xbd, 0x30, 0x9c, 0x71,
0xad, 0x01, 0x39, 0x2a, 0xd0, 0x8e, 0x39, 0x59, 0x79, 0xab, 0xf0, 0x89, 0x1a, 0x0b, 0x08, 0xd9,
0xd1, 0x0f, 0x40, 0x7f, 0x01, 0xb3, 0xfc, 0xef, 0x0a, 0x72, 0xf4, 0xae, 0x5b, 0x98, 0x1d, 0x37,
0x00, 0x4d, 0x2b, 0x59, 0xb8, 0x6d, 0x7d, 0xcd, 0xb8, 0x8e, 0xae, 0x59, 0xb1, 0x3b, 0x12, 0xd2,
0x55, 0x56, 0x19, 0x04, 0x1b, 0x89, 0xc9, 0x03, 0x6f, 0x95, 0xe0, 0x28, 0x59, 0x7f, 0xe8, 0x06,
0x8b, 0xd7, 0x84, 0x4c, 0x56, 0x4a, 0xb6, 0xe2, 0x2e, 0x7e, 0xef, 0x62, 0x78, 0x3f, 0xbb, 0x21,
0x8b, 0x0a, 0x74, 0xad, 0x1a, 0x6f, 0x65, 0x59, 0x83, 0x2d, 0xbd, 0x46, 0xeb, 0x1d, 0x4a, 0x51,
0x0a, 0x78, 0xd4, 0x0e, 0xad, 0xe4, 0xf7, 0xd3, 0xa4, 0x48, 0x96, 0xe9, 0x7a, 0x3e, 0x90, 0x2b,
0xb0, 0x9b, 0x9e, 0xbb, 0x1a, 0xb0, 0xec, 0x9a, 0x14, 0xfb, 0x64, 0xde, 0x44, 0xd5, 0x28, 0xa8,
0xf2, 0x7f, 0x55, 0x9b, 0x08, 0x9d, 0x37, 0x24, 0xed, 0xab, 0xcc, 0x72, 0xda, 0x25, 0xa7, 0x7d,
0x72, 0x1a, 0xb2, 0xdc, 0x9a, 0xd0, 0xdf, 0xf4, 0xed, 0xeb, 0xe5, 0xa0, 0x48, 0x96, 0x87, 0xa7,
0x27, 0x74, 0xb7, 0x6d, 0xba, 0x27, 0xf4, 0x7a, 0x90, 0x5f, 0xa6, 0xef, 0xcf, 0x1f, 0x9f, 0xe3,
0x51, 0x9a, 0x6c, 0xc7, 0x41, 0x7f, 0xf6, 0x1d, 0x00, 0x00, 0xff, 0xff, 0xc9, 0xf3, 0x6a, 0x56,
0xd5, 0x01, 0x00, 0x00,
}

View file

@ -0,0 +1,108 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/annotations/security.proto
package udpa_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _security_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on FieldSecurityAnnotation with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *FieldSecurityAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for ConfigureForUntrustedDownstream
// no validation rules for ConfigureForUntrustedUpstream
return nil
}
// FieldSecurityAnnotationValidationError is the validation error returned by
// FieldSecurityAnnotation.Validate if the designated constraints aren't met.
type FieldSecurityAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e FieldSecurityAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e FieldSecurityAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e FieldSecurityAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e FieldSecurityAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e FieldSecurityAnnotationValidationError) ErrorName() string {
return "FieldSecurityAnnotationValidationError"
}
// Error satisfies the builtin error interface
func (e FieldSecurityAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sFieldSecurityAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = FieldSecurityAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = FieldSecurityAnnotationValidationError{}

View file

@ -0,0 +1,50 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/annotations/sensitive.proto
package udpa_annotations
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
descriptor "github.com/golang/protobuf/protoc-gen-go/descriptor"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
var E_Sensitive = &proto.ExtensionDesc{
ExtendedType: (*descriptor.FieldOptions)(nil),
ExtensionType: (*bool)(nil),
Field: 76569463,
Name: "udpa.annotations.sensitive",
Tag: "varint,76569463,opt,name=sensitive",
Filename: "udpa/annotations/sensitive.proto",
}
func init() {
proto.RegisterExtension(E_Sensitive)
}
func init() { proto.RegisterFile("udpa/annotations/sensitive.proto", fileDescriptor_abbd0dde0408189d) }
var fileDescriptor_abbd0dde0408189d = []byte{
// 134 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x52, 0x28, 0x4d, 0x29, 0x48,
0xd4, 0x4f, 0xcc, 0xcb, 0xcb, 0x2f, 0x49, 0x2c, 0xc9, 0xcc, 0xcf, 0x2b, 0xd6, 0x2f, 0x4e, 0xcd,
0x2b, 0xce, 0x2c, 0xc9, 0x2c, 0x4b, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x00, 0xa9,
0xd0, 0x43, 0x52, 0x21, 0xa5, 0x90, 0x9e, 0x9f, 0x9f, 0x9e, 0x93, 0xaa, 0x0f, 0x96, 0x4f, 0x2a,
0x4d, 0xd3, 0x4f, 0x49, 0x2d, 0x4e, 0x2e, 0xca, 0x2c, 0x28, 0xc9, 0x2f, 0x82, 0xe8, 0xb1, 0xb2,
0xe3, 0xe2, 0x84, 0x1b, 0x23, 0x24, 0xab, 0x07, 0x51, 0xaf, 0x07, 0x53, 0xaf, 0xe7, 0x96, 0x99,
0x9a, 0x93, 0xe2, 0x5f, 0x00, 0x36, 0x4d, 0xe2, 0xfb, 0xb6, 0x83, 0x2a, 0x0a, 0x8c, 0x1a, 0x1c,
0x41, 0x08, 0x2d, 0x49, 0x6c, 0x60, 0xa5, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5f, 0xba,
0xeb, 0x73, 0x9e, 0x00, 0x00, 0x00,
}

View file

@ -0,0 +1,37 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/annotations/sensitive.proto
package udpa_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _sensitive_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")

View file

@ -0,0 +1,141 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/annotations/status.proto
package udpa_annotations
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
descriptor "github.com/golang/protobuf/protoc-gen-go/descriptor"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type PackageVersionStatus int32
const (
PackageVersionStatus_UNKNOWN PackageVersionStatus = 0
PackageVersionStatus_FROZEN PackageVersionStatus = 1
PackageVersionStatus_ACTIVE PackageVersionStatus = 2
PackageVersionStatus_NEXT_MAJOR_VERSION_CANDIDATE PackageVersionStatus = 3
)
var PackageVersionStatus_name = map[int32]string{
0: "UNKNOWN",
1: "FROZEN",
2: "ACTIVE",
3: "NEXT_MAJOR_VERSION_CANDIDATE",
}
var PackageVersionStatus_value = map[string]int32{
"UNKNOWN": 0,
"FROZEN": 1,
"ACTIVE": 2,
"NEXT_MAJOR_VERSION_CANDIDATE": 3,
}
func (x PackageVersionStatus) String() string {
return proto.EnumName(PackageVersionStatus_name, int32(x))
}
func (PackageVersionStatus) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_011cc2e7e491b0ff, []int{0}
}
type StatusAnnotation struct {
WorkInProgress bool `protobuf:"varint,1,opt,name=work_in_progress,json=workInProgress,proto3" json:"work_in_progress,omitempty"`
PackageVersionStatus PackageVersionStatus `protobuf:"varint,2,opt,name=package_version_status,json=packageVersionStatus,proto3,enum=udpa.annotations.PackageVersionStatus" json:"package_version_status,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *StatusAnnotation) Reset() { *m = StatusAnnotation{} }
func (m *StatusAnnotation) String() string { return proto.CompactTextString(m) }
func (*StatusAnnotation) ProtoMessage() {}
func (*StatusAnnotation) Descriptor() ([]byte, []int) {
return fileDescriptor_011cc2e7e491b0ff, []int{0}
}
func (m *StatusAnnotation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_StatusAnnotation.Unmarshal(m, b)
}
func (m *StatusAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_StatusAnnotation.Marshal(b, m, deterministic)
}
func (m *StatusAnnotation) XXX_Merge(src proto.Message) {
xxx_messageInfo_StatusAnnotation.Merge(m, src)
}
func (m *StatusAnnotation) XXX_Size() int {
return xxx_messageInfo_StatusAnnotation.Size(m)
}
func (m *StatusAnnotation) XXX_DiscardUnknown() {
xxx_messageInfo_StatusAnnotation.DiscardUnknown(m)
}
var xxx_messageInfo_StatusAnnotation proto.InternalMessageInfo
func (m *StatusAnnotation) GetWorkInProgress() bool {
if m != nil {
return m.WorkInProgress
}
return false
}
func (m *StatusAnnotation) GetPackageVersionStatus() PackageVersionStatus {
if m != nil {
return m.PackageVersionStatus
}
return PackageVersionStatus_UNKNOWN
}
var E_FileStatus = &proto.ExtensionDesc{
ExtendedType: (*descriptor.FileOptions)(nil),
ExtensionType: (*StatusAnnotation)(nil),
Field: 222707719,
Name: "udpa.annotations.file_status",
Tag: "bytes,222707719,opt,name=file_status",
Filename: "udpa/annotations/status.proto",
}
func init() {
proto.RegisterEnum("udpa.annotations.PackageVersionStatus", PackageVersionStatus_name, PackageVersionStatus_value)
proto.RegisterType((*StatusAnnotation)(nil), "udpa.annotations.StatusAnnotation")
proto.RegisterExtension(E_FileStatus)
}
func init() { proto.RegisterFile("udpa/annotations/status.proto", fileDescriptor_011cc2e7e491b0ff) }
var fileDescriptor_011cc2e7e491b0ff = []byte{
// 305 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x50, 0x4f, 0x4b, 0xc3, 0x30,
0x1c, 0xb5, 0x13, 0xa6, 0x64, 0x30, 0x42, 0x18, 0x32, 0x64, 0x42, 0xd9, 0x41, 0x8a, 0x87, 0x14,
0xe6, 0xcd, 0x5b, 0xd9, 0x3a, 0xa8, 0x62, 0x3a, 0xba, 0x39, 0x45, 0x94, 0xd0, 0x6d, 0x59, 0x89,
0x1b, 0x49, 0x48, 0x32, 0xbd, 0x7a, 0xf3, 0x33, 0xe8, 0xa7, 0x95, 0x36, 0x53, 0x64, 0xee, 0x16,
0xde, 0xbf, 0xbc, 0xdf, 0x03, 0x67, 0x9b, 0x85, 0xca, 0xc3, 0x5c, 0x08, 0x69, 0x73, 0xcb, 0xa5,
0x30, 0xa1, 0xb1, 0xb9, 0xdd, 0x18, 0xac, 0xb4, 0xb4, 0x12, 0xc1, 0x92, 0xc6, 0x7f, 0xe8, 0x53,
0xbf, 0x90, 0xb2, 0x58, 0xb3, 0xb0, 0xe2, 0x67, 0x9b, 0x65, 0xb8, 0x60, 0x66, 0xae, 0xb9, 0xb2,
0x52, 0x3b, 0x4f, 0xf7, 0xcb, 0x03, 0x70, 0x5c, 0x85, 0x44, 0xbf, 0x3e, 0x14, 0x00, 0xf8, 0x26,
0xf5, 0x8a, 0x72, 0x41, 0x95, 0x96, 0x85, 0x66, 0xc6, 0xb4, 0x3d, 0xdf, 0x0b, 0x8e, 0xb3, 0x66,
0x89, 0x27, 0x62, 0xb4, 0x45, 0xd1, 0x13, 0x38, 0x51, 0xf9, 0x7c, 0x95, 0x17, 0x8c, 0xbe, 0x32,
0x6d, 0xb8, 0x14, 0xd4, 0x55, 0x6a, 0xd7, 0x7c, 0x2f, 0x68, 0xf6, 0xce, 0xf1, 0x6e, 0x27, 0x3c,
0x72, 0xfa, 0xa9, 0x93, 0xbb, 0xbf, 0xb3, 0x96, 0xda, 0x83, 0x5e, 0x3c, 0x83, 0xd6, 0x3e, 0x35,
0x6a, 0x80, 0xa3, 0x3b, 0x72, 0x43, 0xd2, 0x7b, 0x02, 0x0f, 0x10, 0x00, 0xf5, 0x61, 0x96, 0x3e,
0xc6, 0x04, 0x7a, 0xe5, 0x3b, 0xea, 0x4f, 0x92, 0x69, 0x0c, 0x6b, 0xc8, 0x07, 0x1d, 0x12, 0x3f,
0x4c, 0xe8, 0x6d, 0x74, 0x9d, 0x66, 0x74, 0x1a, 0x67, 0xe3, 0x24, 0x25, 0xb4, 0x1f, 0x91, 0x41,
0x32, 0x88, 0x26, 0x31, 0x3c, 0xbc, 0x5a, 0x80, 0xc6, 0x92, 0xaf, 0xd9, 0xb6, 0x31, 0xea, 0x60,
0xb7, 0x16, 0xfe, 0x59, 0x0b, 0x0f, 0xf9, 0x9a, 0xa5, 0xaa, 0xaa, 0xdd, 0xfe, 0x78, 0xff, 0x7c,
0xf1, 0xbd, 0xa0, 0xd1, 0xeb, 0xfe, 0x3f, 0x69, 0x77, 0xc0, 0x0c, 0x94, 0xb9, 0x0e, 0x9d, 0xd5,
0xab, 0xb8, 0xcb, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x58, 0x12, 0xee, 0xf3, 0xbd, 0x01, 0x00,
0x00,
}

View file

@ -0,0 +1,106 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/annotations/status.proto
package udpa_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _status_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on StatusAnnotation with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *StatusAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for WorkInProgress
// no validation rules for PackageVersionStatus
return nil
}
// StatusAnnotationValidationError is the validation error returned by
// StatusAnnotation.Validate if the designated constraints aren't met.
type StatusAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e StatusAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e StatusAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e StatusAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e StatusAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e StatusAnnotationValidationError) ErrorName() string { return "StatusAnnotationValidationError" }
// Error satisfies the builtin error interface
func (e StatusAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sStatusAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = StatusAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = StatusAnnotationValidationError{}

View file

@ -0,0 +1,94 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: udpa/annotations/versioning.proto
package udpa_annotations
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
descriptor "github.com/golang/protobuf/protoc-gen-go/descriptor"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type VersioningAnnotation struct {
PreviousMessageType string `protobuf:"bytes,1,opt,name=previous_message_type,json=previousMessageType,proto3" json:"previous_message_type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *VersioningAnnotation) Reset() { *m = VersioningAnnotation{} }
func (m *VersioningAnnotation) String() string { return proto.CompactTextString(m) }
func (*VersioningAnnotation) ProtoMessage() {}
func (*VersioningAnnotation) Descriptor() ([]byte, []int) {
return fileDescriptor_5bc0544382e16cfc, []int{0}
}
func (m *VersioningAnnotation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_VersioningAnnotation.Unmarshal(m, b)
}
func (m *VersioningAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_VersioningAnnotation.Marshal(b, m, deterministic)
}
func (m *VersioningAnnotation) XXX_Merge(src proto.Message) {
xxx_messageInfo_VersioningAnnotation.Merge(m, src)
}
func (m *VersioningAnnotation) XXX_Size() int {
return xxx_messageInfo_VersioningAnnotation.Size(m)
}
func (m *VersioningAnnotation) XXX_DiscardUnknown() {
xxx_messageInfo_VersioningAnnotation.DiscardUnknown(m)
}
var xxx_messageInfo_VersioningAnnotation proto.InternalMessageInfo
func (m *VersioningAnnotation) GetPreviousMessageType() string {
if m != nil {
return m.PreviousMessageType
}
return ""
}
var E_Versioning = &proto.ExtensionDesc{
ExtendedType: (*descriptor.MessageOptions)(nil),
ExtensionType: (*VersioningAnnotation)(nil),
Field: 7881811,
Name: "udpa.annotations.versioning",
Tag: "bytes,7881811,opt,name=versioning",
Filename: "udpa/annotations/versioning.proto",
}
func init() {
proto.RegisterType((*VersioningAnnotation)(nil), "udpa.annotations.VersioningAnnotation")
proto.RegisterExtension(E_Versioning)
}
func init() { proto.RegisterFile("udpa/annotations/versioning.proto", fileDescriptor_5bc0544382e16cfc) }
var fileDescriptor_5bc0544382e16cfc = []byte{
// 193 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x52, 0x2c, 0x4d, 0x29, 0x48,
0xd4, 0x4f, 0xcc, 0xcb, 0xcb, 0x2f, 0x49, 0x2c, 0xc9, 0xcc, 0xcf, 0x2b, 0xd6, 0x2f, 0x4b, 0x2d,
0x2a, 0xce, 0xcc, 0xcf, 0xcb, 0xcc, 0x4b, 0xd7, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x00,
0x29, 0xd1, 0x43, 0x52, 0x22, 0xa5, 0x90, 0x9e, 0x9f, 0x9f, 0x9e, 0x93, 0xaa, 0x0f, 0x96, 0x4f,
0x2a, 0x4d, 0xd3, 0x4f, 0x49, 0x2d, 0x4e, 0x2e, 0xca, 0x2c, 0x28, 0xc9, 0x2f, 0x82, 0xe8, 0x51,
0xf2, 0xe2, 0x12, 0x09, 0x83, 0x9b, 0xe3, 0x08, 0xd7, 0x2a, 0x64, 0xc4, 0x25, 0x5a, 0x50, 0x94,
0x5a, 0x96, 0x99, 0x5f, 0x5a, 0x1c, 0x9f, 0x9b, 0x5a, 0x5c, 0x9c, 0x98, 0x9e, 0x1a, 0x5f, 0x52,
0x59, 0x90, 0x2a, 0xc1, 0xa8, 0xc0, 0xa8, 0xc1, 0x19, 0x24, 0x0c, 0x93, 0xf4, 0x85, 0xc8, 0x85,
0x54, 0x16, 0xa4, 0x5a, 0x65, 0x71, 0x71, 0x21, 0xdc, 0x24, 0x24, 0xaf, 0x07, 0xb1, 0x5c, 0x0f,
0x66, 0xb9, 0x1e, 0x54, 0xad, 0x7f, 0x01, 0xd8, 0x71, 0x12, 0x97, 0x3b, 0x1e, 0x32, 0x2b, 0x30,
0x6a, 0x70, 0x1b, 0xa9, 0xe9, 0xa1, 0x3b, 0x5c, 0x0f, 0x9b, 0x9b, 0x82, 0x90, 0x4c, 0x4f, 0x62,
0x03, 0x9b, 0x6a, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0xc1, 0x9c, 0xb8, 0x85, 0x17, 0x01, 0x00,
0x00,
}

View file

@ -0,0 +1,106 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: udpa/annotations/versioning.proto
package udpa_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _versioning_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on VersioningAnnotation with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *VersioningAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for PreviousMessageType
return nil
}
// VersioningAnnotationValidationError is the validation error returned by
// VersioningAnnotation.Validate if the designated constraints aren't met.
type VersioningAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e VersioningAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e VersioningAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e VersioningAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e VersioningAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e VersioningAnnotationValidationError) ErrorName() string {
return "VersioningAnnotationValidationError"
}
// Error satisfies the builtin error interface
func (e VersioningAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sVersioningAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = VersioningAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = VersioningAnnotationValidationError{}

View file

@ -0,0 +1,84 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: xds/core/v3/authority.proto
package xds_core_v3
import (
fmt "fmt"
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type Authority struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Authority) Reset() { *m = Authority{} }
func (m *Authority) String() string { return proto.CompactTextString(m) }
func (*Authority) ProtoMessage() {}
func (*Authority) Descriptor() ([]byte, []int) {
return fileDescriptor_74635363e1fbb077, []int{0}
}
func (m *Authority) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Authority.Unmarshal(m, b)
}
func (m *Authority) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Authority.Marshal(b, m, deterministic)
}
func (m *Authority) XXX_Merge(src proto.Message) {
xxx_messageInfo_Authority.Merge(m, src)
}
func (m *Authority) XXX_Size() int {
return xxx_messageInfo_Authority.Size(m)
}
func (m *Authority) XXX_DiscardUnknown() {
xxx_messageInfo_Authority.DiscardUnknown(m)
}
var xxx_messageInfo_Authority proto.InternalMessageInfo
func (m *Authority) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func init() {
proto.RegisterType((*Authority)(nil), "xds.core.v3.Authority")
}
func init() { proto.RegisterFile("xds/core/v3/authority.proto", fileDescriptor_74635363e1fbb077) }
var fileDescriptor_74635363e1fbb077 = []byte{
// 182 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xae, 0x48, 0x29, 0xd6,
0x4f, 0xce, 0x2f, 0x4a, 0xd5, 0x2f, 0x33, 0xd6, 0x4f, 0x2c, 0x2d, 0xc9, 0xc8, 0x2f, 0xca, 0x2c,
0xa9, 0xd4, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0xae, 0x48, 0x29, 0xd6, 0x03, 0x49, 0xea,
0x95, 0x19, 0x4b, 0xc9, 0x96, 0xa6, 0x14, 0x24, 0xea, 0x27, 0xe6, 0xe5, 0xe5, 0x97, 0x24, 0x96,
0x64, 0xe6, 0xe7, 0x15, 0xeb, 0x17, 0x97, 0x24, 0x96, 0x94, 0x16, 0x43, 0xd4, 0x4a, 0x89, 0x97,
0x25, 0xe6, 0x64, 0xa6, 0x24, 0x96, 0xa4, 0xea, 0xc3, 0x18, 0x10, 0x09, 0x25, 0x0d, 0x2e, 0x4e,
0x47, 0x98, 0xb9, 0x42, 0xd2, 0x5c, 0x2c, 0x79, 0x89, 0xb9, 0xa9, 0x12, 0x8c, 0x0a, 0x8c, 0x1a,
0x9c, 0x4e, 0xec, 0xbf, 0x9c, 0x58, 0x8a, 0x98, 0x04, 0x18, 0x83, 0xc0, 0x82, 0x4e, 0xe6, 0xbb,
0x1a, 0x4e, 0x5c, 0x64, 0x63, 0xe2, 0x60, 0xe4, 0x92, 0x4e, 0xce, 0xcf, 0xd5, 0x4b, 0xcf, 0x2c,
0xc9, 0x28, 0x4d, 0xd2, 0x03, 0x59, 0xab, 0x87, 0xe4, 0x10, 0x27, 0x3e, 0xb8, 0x71, 0x01, 0x20,
0x0b, 0x02, 0x18, 0x93, 0xd8, 0xc0, 0x36, 0x19, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0xf7, 0x21,
0x66, 0x70, 0xcd, 0x00, 0x00, 0x00,
}

View file

@ -0,0 +1,108 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: xds/core/v3/authority.proto
package xds_core_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _authority_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on Authority with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Authority) Validate() error {
if m == nil {
return nil
}
if utf8.RuneCountInString(m.GetName()) < 1 {
return AuthorityValidationError{
field: "Name",
reason: "value length must be at least 1 runes",
}
}
return nil
}
// AuthorityValidationError is the validation error returned by
// Authority.Validate if the designated constraints aren't met.
type AuthorityValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e AuthorityValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e AuthorityValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e AuthorityValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e AuthorityValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e AuthorityValidationError) ErrorName() string { return "AuthorityValidationError" }
// Error satisfies the builtin error interface
func (e AuthorityValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sAuthority.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = AuthorityValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = AuthorityValidationError{}

View file

@ -0,0 +1,194 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: xds/core/v3/collection_entry.proto
package xds_core_v3
import (
fmt "fmt"
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
any "github.com/golang/protobuf/ptypes/any"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type CollectionEntry struct {
// Types that are valid to be assigned to ResourceSpecifier:
// *CollectionEntry_Locator
// *CollectionEntry_InlineEntry_
ResourceSpecifier isCollectionEntry_ResourceSpecifier `protobuf_oneof:"resource_specifier"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CollectionEntry) Reset() { *m = CollectionEntry{} }
func (m *CollectionEntry) String() string { return proto.CompactTextString(m) }
func (*CollectionEntry) ProtoMessage() {}
func (*CollectionEntry) Descriptor() ([]byte, []int) {
return fileDescriptor_5b15c821e5994c90, []int{0}
}
func (m *CollectionEntry) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CollectionEntry.Unmarshal(m, b)
}
func (m *CollectionEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CollectionEntry.Marshal(b, m, deterministic)
}
func (m *CollectionEntry) XXX_Merge(src proto.Message) {
xxx_messageInfo_CollectionEntry.Merge(m, src)
}
func (m *CollectionEntry) XXX_Size() int {
return xxx_messageInfo_CollectionEntry.Size(m)
}
func (m *CollectionEntry) XXX_DiscardUnknown() {
xxx_messageInfo_CollectionEntry.DiscardUnknown(m)
}
var xxx_messageInfo_CollectionEntry proto.InternalMessageInfo
type isCollectionEntry_ResourceSpecifier interface {
isCollectionEntry_ResourceSpecifier()
}
type CollectionEntry_Locator struct {
Locator *ResourceLocator `protobuf:"bytes,1,opt,name=locator,proto3,oneof"`
}
type CollectionEntry_InlineEntry_ struct {
InlineEntry *CollectionEntry_InlineEntry `protobuf:"bytes,2,opt,name=inline_entry,json=inlineEntry,proto3,oneof"`
}
func (*CollectionEntry_Locator) isCollectionEntry_ResourceSpecifier() {}
func (*CollectionEntry_InlineEntry_) isCollectionEntry_ResourceSpecifier() {}
func (m *CollectionEntry) GetResourceSpecifier() isCollectionEntry_ResourceSpecifier {
if m != nil {
return m.ResourceSpecifier
}
return nil
}
func (m *CollectionEntry) GetLocator() *ResourceLocator {
if x, ok := m.GetResourceSpecifier().(*CollectionEntry_Locator); ok {
return x.Locator
}
return nil
}
func (m *CollectionEntry) GetInlineEntry() *CollectionEntry_InlineEntry {
if x, ok := m.GetResourceSpecifier().(*CollectionEntry_InlineEntry_); ok {
return x.InlineEntry
}
return nil
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*CollectionEntry) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*CollectionEntry_Locator)(nil),
(*CollectionEntry_InlineEntry_)(nil),
}
}
type CollectionEntry_InlineEntry struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
Resource *any.Any `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CollectionEntry_InlineEntry) Reset() { *m = CollectionEntry_InlineEntry{} }
func (m *CollectionEntry_InlineEntry) String() string { return proto.CompactTextString(m) }
func (*CollectionEntry_InlineEntry) ProtoMessage() {}
func (*CollectionEntry_InlineEntry) Descriptor() ([]byte, []int) {
return fileDescriptor_5b15c821e5994c90, []int{0, 0}
}
func (m *CollectionEntry_InlineEntry) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CollectionEntry_InlineEntry.Unmarshal(m, b)
}
func (m *CollectionEntry_InlineEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CollectionEntry_InlineEntry.Marshal(b, m, deterministic)
}
func (m *CollectionEntry_InlineEntry) XXX_Merge(src proto.Message) {
xxx_messageInfo_CollectionEntry_InlineEntry.Merge(m, src)
}
func (m *CollectionEntry_InlineEntry) XXX_Size() int {
return xxx_messageInfo_CollectionEntry_InlineEntry.Size(m)
}
func (m *CollectionEntry_InlineEntry) XXX_DiscardUnknown() {
xxx_messageInfo_CollectionEntry_InlineEntry.DiscardUnknown(m)
}
var xxx_messageInfo_CollectionEntry_InlineEntry proto.InternalMessageInfo
func (m *CollectionEntry_InlineEntry) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *CollectionEntry_InlineEntry) GetVersion() string {
if m != nil {
return m.Version
}
return ""
}
func (m *CollectionEntry_InlineEntry) GetResource() *any.Any {
if m != nil {
return m.Resource
}
return nil
}
func init() {
proto.RegisterType((*CollectionEntry)(nil), "xds.core.v3.CollectionEntry")
proto.RegisterType((*CollectionEntry_InlineEntry)(nil), "xds.core.v3.CollectionEntry.InlineEntry")
}
func init() { proto.RegisterFile("xds/core/v3/collection_entry.proto", fileDescriptor_5b15c821e5994c90) }
var fileDescriptor_5b15c821e5994c90 = []byte{
// 375 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x91, 0xcf, 0x6b, 0xdb, 0x30,
0x1c, 0xc5, 0xe3, 0x64, 0xe4, 0x87, 0x3c, 0x18, 0x88, 0x8c, 0x38, 0x59, 0x06, 0x23, 0xec, 0x10,
0x18, 0x96, 0x42, 0x72, 0xd9, 0x06, 0x3b, 0xc4, 0x63, 0x90, 0xc1, 0x06, 0xc1, 0xc7, 0x36, 0x6d,
0x50, 0x6c, 0x25, 0x15, 0x38, 0x52, 0x90, 0x64, 0x93, 0xf4, 0x50, 0x7a, 0xef, 0x7f, 0xd4, 0x6b,
0x2f, 0xbd, 0xf6, 0xbf, 0x29, 0x3d, 0x15, 0xcb, 0x76, 0x9a, 0xe4, 0x26, 0xf1, 0x3e, 0x4f, 0xef,
0x7d, 0xf5, 0x05, 0xbd, 0x6d, 0xa8, 0x70, 0x20, 0x24, 0xc5, 0xc9, 0x08, 0x07, 0x22, 0x8a, 0x68,
0xa0, 0x99, 0xe0, 0x73, 0xca, 0xb5, 0xdc, 0xa1, 0x8d, 0x14, 0x5a, 0x40, 0x7b, 0x1b, 0x2a, 0x94,
0x32, 0x28, 0x19, 0x75, 0xda, 0x2b, 0x21, 0x56, 0x11, 0xc5, 0x46, 0x5a, 0xc4, 0x4b, 0x4c, 0x78,
0xce, 0x75, 0x3e, 0xc7, 0xe1, 0x86, 0x60, 0xc2, 0xb9, 0xd0, 0x24, 0x7d, 0x44, 0x61, 0xa5, 0x89,
0x8e, 0x55, 0x2e, 0x1f, 0x45, 0x49, 0xaa, 0x44, 0x2c, 0x03, 0x3a, 0x8f, 0x44, 0x40, 0xb4, 0x90,
0x39, 0xd3, 0x4a, 0x48, 0xc4, 0x42, 0xa2, 0x29, 0x2e, 0x0e, 0x99, 0xd0, 0x7b, 0x28, 0x83, 0x0f,
0xbf, 0xf7, 0xf5, 0xfe, 0xa4, 0xed, 0xe0, 0x77, 0x50, 0xcb, 0xdd, 0x8e, 0xf5, 0xc5, 0xea, 0xdb,
0xc3, 0x2e, 0x3a, 0x68, 0x8a, 0xfc, 0x3c, 0xe2, 0x5f, 0xc6, 0x4c, 0x4a, 0x7e, 0x81, 0xc3, 0xff,
0xe0, 0x3d, 0xe3, 0x11, 0xe3, 0x34, 0x9b, 0xd3, 0x29, 0x1b, 0x7b, 0xff, 0xc8, 0x7e, 0x92, 0x86,
0xfe, 0x1a, 0x83, 0x39, 0x4f, 0x4a, 0xbe, 0xcd, 0xde, 0xae, 0x9d, 0x3b, 0x0b, 0xd8, 0x07, 0x32,
0x1c, 0x80, 0x77, 0x9c, 0xac, 0xa9, 0x69, 0xd5, 0xf0, 0xba, 0x2f, 0x5e, 0x5b, 0xb6, 0x86, 0x1f,
0x2f, 0xcf, 0x07, 0xee, 0x0f, 0xe2, 0x5e, 0x8f, 0xdd, 0xb3, 0xf9, 0xcc, 0x9d, 0xa1, 0x9b, 0x9f,
0x17, 0xdf, 0xbe, 0xfa, 0x86, 0x84, 0x0e, 0xa8, 0x25, 0x54, 0x2a, 0x26, 0xb8, 0xe9, 0xd2, 0xf0,
0x8b, 0x2b, 0x1c, 0x80, 0x7a, 0xf1, 0x57, 0x4e, 0xc5, 0xd4, 0x6c, 0xa2, 0x6c, 0x05, 0xa8, 0x58,
0x01, 0x1a, 0xf3, 0x9d, 0xbf, 0xa7, 0xbc, 0x36, 0x80, 0xfb, 0xdf, 0x55, 0x1b, 0x1a, 0xb0, 0x25,
0xa3, 0x12, 0x56, 0x9e, 0x3d, 0xcb, 0xfb, 0x75, 0x7f, 0xfb, 0xf8, 0x54, 0x2d, 0xd7, 0x2d, 0xf0,
0x29, 0x10, 0x6b, 0xb4, 0x62, 0xfa, 0x2a, 0x5e, 0xa0, 0x74, 0x6d, 0x87, 0xa3, 0x7b, 0xcd, 0x93,
0xd9, 0xa7, 0x69, 0xd0, 0xd4, 0x5a, 0x54, 0x4d, 0xe2, 0xe8, 0x35, 0x00, 0x00, 0xff, 0xff, 0x8a,
0x35, 0xc0, 0xf2, 0x35, 0x02, 0x00, 0x00,
}

View file

@ -0,0 +1,225 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: xds/core/v3/collection_entry.proto
package xds_core_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _collection_entry_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on CollectionEntry with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *CollectionEntry) Validate() error {
if m == nil {
return nil
}
switch m.ResourceSpecifier.(type) {
case *CollectionEntry_Locator:
if v, ok := interface{}(m.GetLocator()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CollectionEntryValidationError{
field: "Locator",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *CollectionEntry_InlineEntry_:
if v, ok := interface{}(m.GetInlineEntry()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CollectionEntryValidationError{
field: "InlineEntry",
reason: "embedded message failed validation",
cause: err,
}
}
}
default:
return CollectionEntryValidationError{
field: "ResourceSpecifier",
reason: "value is required",
}
}
return nil
}
// CollectionEntryValidationError is the validation error returned by
// CollectionEntry.Validate if the designated constraints aren't met.
type CollectionEntryValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CollectionEntryValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CollectionEntryValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CollectionEntryValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CollectionEntryValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CollectionEntryValidationError) ErrorName() string { return "CollectionEntryValidationError" }
// Error satisfies the builtin error interface
func (e CollectionEntryValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCollectionEntry.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CollectionEntryValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CollectionEntryValidationError{}
// Validate checks the field values on CollectionEntry_InlineEntry with the
// rules defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CollectionEntry_InlineEntry) Validate() error {
if m == nil {
return nil
}
if !_CollectionEntry_InlineEntry_Name_Pattern.MatchString(m.GetName()) {
return CollectionEntry_InlineEntryValidationError{
field: "Name",
reason: "value does not match regex pattern \"^[0-9a-zA-Z_\\\\-\\\\.~:]+$\"",
}
}
// no validation rules for Version
if v, ok := interface{}(m.GetResource()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CollectionEntry_InlineEntryValidationError{
field: "Resource",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// CollectionEntry_InlineEntryValidationError is the validation error returned
// by CollectionEntry_InlineEntry.Validate if the designated constraints
// aren't met.
type CollectionEntry_InlineEntryValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CollectionEntry_InlineEntryValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CollectionEntry_InlineEntryValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CollectionEntry_InlineEntryValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CollectionEntry_InlineEntryValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CollectionEntry_InlineEntryValidationError) ErrorName() string {
return "CollectionEntry_InlineEntryValidationError"
}
// Error satisfies the builtin error interface
func (e CollectionEntry_InlineEntryValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCollectionEntry_InlineEntry.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CollectionEntry_InlineEntryValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CollectionEntry_InlineEntryValidationError{}
var _CollectionEntry_InlineEntry_Name_Pattern = regexp.MustCompile("^[0-9a-zA-Z_\\-\\.~:]+$")

View file

@ -0,0 +1,86 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: xds/core/v3/context_params.proto
package xds_core_v3
import (
fmt "fmt"
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type ContextParams struct {
Params map[string]string `protobuf:"bytes,1,rep,name=params,proto3" json:"params,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ContextParams) Reset() { *m = ContextParams{} }
func (m *ContextParams) String() string { return proto.CompactTextString(m) }
func (*ContextParams) ProtoMessage() {}
func (*ContextParams) Descriptor() ([]byte, []int) {
return fileDescriptor_a77d5b5f2f15aa7c, []int{0}
}
func (m *ContextParams) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContextParams.Unmarshal(m, b)
}
func (m *ContextParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ContextParams.Marshal(b, m, deterministic)
}
func (m *ContextParams) XXX_Merge(src proto.Message) {
xxx_messageInfo_ContextParams.Merge(m, src)
}
func (m *ContextParams) XXX_Size() int {
return xxx_messageInfo_ContextParams.Size(m)
}
func (m *ContextParams) XXX_DiscardUnknown() {
xxx_messageInfo_ContextParams.DiscardUnknown(m)
}
var xxx_messageInfo_ContextParams proto.InternalMessageInfo
func (m *ContextParams) GetParams() map[string]string {
if m != nil {
return m.Params
}
return nil
}
func init() {
proto.RegisterType((*ContextParams)(nil), "xds.core.v3.ContextParams")
proto.RegisterMapType((map[string]string)(nil), "xds.core.v3.ContextParams.ParamsEntry")
}
func init() { proto.RegisterFile("xds/core/v3/context_params.proto", fileDescriptor_a77d5b5f2f15aa7c) }
var fileDescriptor_a77d5b5f2f15aa7c = []byte{
// 221 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x52, 0xa8, 0x48, 0x29, 0xd6,
0x4f, 0xce, 0x2f, 0x4a, 0xd5, 0x2f, 0x33, 0xd6, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xad, 0x28, 0x89,
0x2f, 0x48, 0x2c, 0x4a, 0xcc, 0x2d, 0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0xae, 0x48,
0x29, 0xd6, 0x03, 0xa9, 0xd0, 0x2b, 0x33, 0x96, 0x92, 0x2d, 0x4d, 0x29, 0x48, 0xd4, 0x4f, 0xcc,
0xcb, 0xcb, 0x2f, 0x49, 0x2c, 0xc9, 0xcc, 0xcf, 0x2b, 0xd6, 0x2f, 0x2e, 0x49, 0x2c, 0x29, 0x85,
0xaa, 0x55, 0xea, 0x62, 0xe4, 0xe2, 0x75, 0x86, 0x18, 0x12, 0x00, 0x36, 0x43, 0xc8, 0x8e, 0x8b,
0x0d, 0x62, 0x9a, 0x04, 0xa3, 0x02, 0xb3, 0x06, 0xb7, 0x91, 0x9a, 0x1e, 0x92, 0x71, 0x7a, 0x28,
0x6a, 0xf5, 0x20, 0x94, 0x6b, 0x5e, 0x49, 0x51, 0x65, 0x10, 0x54, 0x97, 0x94, 0x25, 0x17, 0x37,
0x92, 0xb0, 0x90, 0x00, 0x17, 0x73, 0x76, 0x6a, 0xa5, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x67, 0x10,
0x88, 0x29, 0x24, 0xc2, 0xc5, 0x5a, 0x96, 0x98, 0x53, 0x9a, 0x2a, 0xc1, 0x04, 0x16, 0x83, 0x70,
0xac, 0x98, 0x2c, 0x18, 0x9d, 0xac, 0x77, 0x35, 0x9c, 0xb8, 0xc8, 0xc6, 0xc4, 0xc1, 0xc8, 0x25,
0x9d, 0x9c, 0x9f, 0xab, 0x97, 0x9e, 0x59, 0x92, 0x51, 0x9a, 0xa4, 0x07, 0xf2, 0x00, 0xb2, 0x1b,
0x9c, 0x84, 0x50, 0x1c, 0x11, 0x00, 0xf2, 0x47, 0x00, 0x63, 0x12, 0x1b, 0xd8, 0x43, 0xc6, 0x80,
0x00, 0x00, 0x00, 0xff, 0xff, 0xe6, 0x4e, 0x2e, 0x13, 0x20, 0x01, 0x00, 0x00,
}

View file

@ -0,0 +1,104 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: xds/core/v3/context_params.proto
package xds_core_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _context_params_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on ContextParams with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *ContextParams) Validate() error {
if m == nil {
return nil
}
// no validation rules for Params
return nil
}
// ContextParamsValidationError is the validation error returned by
// ContextParams.Validate if the designated constraints aren't met.
type ContextParamsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ContextParamsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ContextParamsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ContextParamsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ContextParamsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ContextParamsValidationError) ErrorName() string { return "ContextParamsValidationError" }
// Error satisfies the builtin error interface
func (e ContextParamsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sContextParams.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ContextParamsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ContextParamsValidationError{}

View file

@ -0,0 +1,104 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: xds/core/v3/resource.proto
package xds_core_v3
import (
fmt "fmt"
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
any "github.com/golang/protobuf/ptypes/any"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type Resource struct {
Name *ResourceName `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
Resource *any.Any `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Resource) Reset() { *m = Resource{} }
func (m *Resource) String() string { return proto.CompactTextString(m) }
func (*Resource) ProtoMessage() {}
func (*Resource) Descriptor() ([]byte, []int) {
return fileDescriptor_acbac04701714df2, []int{0}
}
func (m *Resource) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Resource.Unmarshal(m, b)
}
func (m *Resource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Resource.Marshal(b, m, deterministic)
}
func (m *Resource) XXX_Merge(src proto.Message) {
xxx_messageInfo_Resource.Merge(m, src)
}
func (m *Resource) XXX_Size() int {
return xxx_messageInfo_Resource.Size(m)
}
func (m *Resource) XXX_DiscardUnknown() {
xxx_messageInfo_Resource.DiscardUnknown(m)
}
var xxx_messageInfo_Resource proto.InternalMessageInfo
func (m *Resource) GetName() *ResourceName {
if m != nil {
return m.Name
}
return nil
}
func (m *Resource) GetVersion() string {
if m != nil {
return m.Version
}
return ""
}
func (m *Resource) GetResource() *any.Any {
if m != nil {
return m.Resource
}
return nil
}
func init() {
proto.RegisterType((*Resource)(nil), "xds.core.v3.Resource")
}
func init() { proto.RegisterFile("xds/core/v3/resource.proto", fileDescriptor_acbac04701714df2) }
var fileDescriptor_acbac04701714df2 = []byte{
// 241 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xaa, 0x48, 0x29, 0xd6,
0x4f, 0xce, 0x2f, 0x4a, 0xd5, 0x2f, 0x33, 0xd6, 0x2f, 0x4a, 0x2d, 0xce, 0x2f, 0x2d, 0x4a, 0x4e,
0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0xae, 0x48, 0x29, 0xd6, 0x03, 0xc9, 0xe9, 0x95,
0x19, 0x4b, 0x49, 0xa6, 0xe7, 0xe7, 0xa7, 0xe7, 0xa4, 0xea, 0x83, 0xa5, 0x92, 0x4a, 0xd3, 0xf4,
0x13, 0xf3, 0x2a, 0x21, 0xea, 0xa4, 0x64, 0x4b, 0x53, 0x0a, 0x12, 0xf5, 0x13, 0xf3, 0xf2, 0xf2,
0x4b, 0x12, 0x4b, 0x32, 0xf3, 0xf3, 0x8a, 0xf5, 0x8b, 0x4b, 0x12, 0x4b, 0x4a, 0x8b, 0xa1, 0xd2,
0xf2, 0xd8, 0xac, 0x88, 0xcf, 0x4b, 0xcc, 0x85, 0xda, 0xa3, 0xd4, 0xca, 0xc8, 0xc5, 0x11, 0x04,
0x15, 0x17, 0xd2, 0xe5, 0x62, 0x01, 0x49, 0x49, 0x30, 0x2a, 0x30, 0x6a, 0x70, 0x1b, 0x49, 0xea,
0x21, 0xb9, 0x41, 0x0f, 0xa6, 0xc8, 0x2f, 0x31, 0x37, 0x35, 0x08, 0xac, 0x4c, 0x48, 0x82, 0x8b,
0xbd, 0x2c, 0xb5, 0xa8, 0x38, 0x33, 0x3f, 0x4f, 0x82, 0x49, 0x81, 0x51, 0x83, 0x33, 0x08, 0xc6,
0x15, 0x32, 0xe0, 0xe2, 0x80, 0x59, 0x26, 0xc1, 0x0c, 0x36, 0x4c, 0x44, 0x0f, 0xe2, 0x07, 0x3d,
0x98, 0x1f, 0xf4, 0x1c, 0xf3, 0x2a, 0x83, 0xe0, 0xaa, 0x9c, 0xcc, 0x76, 0x35, 0x9c, 0xb8, 0xc8,
0xc6, 0xc4, 0xc1, 0xc8, 0x25, 0x9d, 0x9c, 0x9f, 0xab, 0x97, 0x9e, 0x59, 0x92, 0x51, 0x9a, 0xa4,
0x07, 0xf2, 0x1c, 0xb2, 0x2b, 0x9c, 0x78, 0x61, 0xce, 0x08, 0x00, 0x19, 0x13, 0xc0, 0x98, 0xc4,
0x06, 0x36, 0xcf, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0xc7, 0x85, 0xe4, 0x8c, 0x4c, 0x01, 0x00,
0x00,
}

View file

@ -0,0 +1,123 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: xds/core/v3/resource.proto
package xds_core_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _resource_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on Resource with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Resource) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetName()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ResourceValidationError{
field: "Name",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for Version
if v, ok := interface{}(m.GetResource()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ResourceValidationError{
field: "Resource",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// ResourceValidationError is the validation error returned by
// Resource.Validate if the designated constraints aren't met.
type ResourceValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ResourceValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ResourceValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ResourceValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ResourceValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ResourceValidationError) ErrorName() string { return "ResourceValidationError" }
// Error satisfies the builtin error interface
func (e ResourceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sResource.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ResourceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ResourceValidationError{}

View file

@ -0,0 +1,279 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: xds/core/v3/resource_locator.proto
package xds_core_v3
import (
fmt "fmt"
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type ResourceLocator_Scheme int32
const (
ResourceLocator_XDSTP ResourceLocator_Scheme = 0
ResourceLocator_HTTP ResourceLocator_Scheme = 1
ResourceLocator_FILE ResourceLocator_Scheme = 2
)
var ResourceLocator_Scheme_name = map[int32]string{
0: "XDSTP",
1: "HTTP",
2: "FILE",
}
var ResourceLocator_Scheme_value = map[string]int32{
"XDSTP": 0,
"HTTP": 1,
"FILE": 2,
}
func (x ResourceLocator_Scheme) String() string {
return proto.EnumName(ResourceLocator_Scheme_name, int32(x))
}
func (ResourceLocator_Scheme) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_eb09b3779eaf3665, []int{0, 0}
}
type ResourceLocator struct {
Scheme ResourceLocator_Scheme `protobuf:"varint,1,opt,name=scheme,proto3,enum=xds.core.v3.ResourceLocator_Scheme" json:"scheme,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
Authority string `protobuf:"bytes,3,opt,name=authority,proto3" json:"authority,omitempty"`
ResourceType string `protobuf:"bytes,4,opt,name=resource_type,json=resourceType,proto3" json:"resource_type,omitempty"`
// Types that are valid to be assigned to ContextParamSpecifier:
// *ResourceLocator_ExactContext
ContextParamSpecifier isResourceLocator_ContextParamSpecifier `protobuf_oneof:"context_param_specifier"`
Directives []*ResourceLocator_Directive `protobuf:"bytes,6,rep,name=directives,proto3" json:"directives,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ResourceLocator) Reset() { *m = ResourceLocator{} }
func (m *ResourceLocator) String() string { return proto.CompactTextString(m) }
func (*ResourceLocator) ProtoMessage() {}
func (*ResourceLocator) Descriptor() ([]byte, []int) {
return fileDescriptor_eb09b3779eaf3665, []int{0}
}
func (m *ResourceLocator) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResourceLocator.Unmarshal(m, b)
}
func (m *ResourceLocator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ResourceLocator.Marshal(b, m, deterministic)
}
func (m *ResourceLocator) XXX_Merge(src proto.Message) {
xxx_messageInfo_ResourceLocator.Merge(m, src)
}
func (m *ResourceLocator) XXX_Size() int {
return xxx_messageInfo_ResourceLocator.Size(m)
}
func (m *ResourceLocator) XXX_DiscardUnknown() {
xxx_messageInfo_ResourceLocator.DiscardUnknown(m)
}
var xxx_messageInfo_ResourceLocator proto.InternalMessageInfo
func (m *ResourceLocator) GetScheme() ResourceLocator_Scheme {
if m != nil {
return m.Scheme
}
return ResourceLocator_XDSTP
}
func (m *ResourceLocator) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *ResourceLocator) GetAuthority() string {
if m != nil {
return m.Authority
}
return ""
}
func (m *ResourceLocator) GetResourceType() string {
if m != nil {
return m.ResourceType
}
return ""
}
type isResourceLocator_ContextParamSpecifier interface {
isResourceLocator_ContextParamSpecifier()
}
type ResourceLocator_ExactContext struct {
ExactContext *ContextParams `protobuf:"bytes,5,opt,name=exact_context,json=exactContext,proto3,oneof"`
}
func (*ResourceLocator_ExactContext) isResourceLocator_ContextParamSpecifier() {}
func (m *ResourceLocator) GetContextParamSpecifier() isResourceLocator_ContextParamSpecifier {
if m != nil {
return m.ContextParamSpecifier
}
return nil
}
func (m *ResourceLocator) GetExactContext() *ContextParams {
if x, ok := m.GetContextParamSpecifier().(*ResourceLocator_ExactContext); ok {
return x.ExactContext
}
return nil
}
func (m *ResourceLocator) GetDirectives() []*ResourceLocator_Directive {
if m != nil {
return m.Directives
}
return nil
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*ResourceLocator) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*ResourceLocator_ExactContext)(nil),
}
}
type ResourceLocator_Directive struct {
// Types that are valid to be assigned to Directive:
// *ResourceLocator_Directive_Alt
// *ResourceLocator_Directive_Entry
Directive isResourceLocator_Directive_Directive `protobuf_oneof:"directive"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ResourceLocator_Directive) Reset() { *m = ResourceLocator_Directive{} }
func (m *ResourceLocator_Directive) String() string { return proto.CompactTextString(m) }
func (*ResourceLocator_Directive) ProtoMessage() {}
func (*ResourceLocator_Directive) Descriptor() ([]byte, []int) {
return fileDescriptor_eb09b3779eaf3665, []int{0, 0}
}
func (m *ResourceLocator_Directive) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResourceLocator_Directive.Unmarshal(m, b)
}
func (m *ResourceLocator_Directive) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ResourceLocator_Directive.Marshal(b, m, deterministic)
}
func (m *ResourceLocator_Directive) XXX_Merge(src proto.Message) {
xxx_messageInfo_ResourceLocator_Directive.Merge(m, src)
}
func (m *ResourceLocator_Directive) XXX_Size() int {
return xxx_messageInfo_ResourceLocator_Directive.Size(m)
}
func (m *ResourceLocator_Directive) XXX_DiscardUnknown() {
xxx_messageInfo_ResourceLocator_Directive.DiscardUnknown(m)
}
var xxx_messageInfo_ResourceLocator_Directive proto.InternalMessageInfo
type isResourceLocator_Directive_Directive interface {
isResourceLocator_Directive_Directive()
}
type ResourceLocator_Directive_Alt struct {
Alt *ResourceLocator `protobuf:"bytes,1,opt,name=alt,proto3,oneof"`
}
type ResourceLocator_Directive_Entry struct {
Entry string `protobuf:"bytes,2,opt,name=entry,proto3,oneof"`
}
func (*ResourceLocator_Directive_Alt) isResourceLocator_Directive_Directive() {}
func (*ResourceLocator_Directive_Entry) isResourceLocator_Directive_Directive() {}
func (m *ResourceLocator_Directive) GetDirective() isResourceLocator_Directive_Directive {
if m != nil {
return m.Directive
}
return nil
}
func (m *ResourceLocator_Directive) GetAlt() *ResourceLocator {
if x, ok := m.GetDirective().(*ResourceLocator_Directive_Alt); ok {
return x.Alt
}
return nil
}
func (m *ResourceLocator_Directive) GetEntry() string {
if x, ok := m.GetDirective().(*ResourceLocator_Directive_Entry); ok {
return x.Entry
}
return ""
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*ResourceLocator_Directive) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*ResourceLocator_Directive_Alt)(nil),
(*ResourceLocator_Directive_Entry)(nil),
}
}
func init() {
proto.RegisterEnum("xds.core.v3.ResourceLocator_Scheme", ResourceLocator_Scheme_name, ResourceLocator_Scheme_value)
proto.RegisterType((*ResourceLocator)(nil), "xds.core.v3.ResourceLocator")
proto.RegisterType((*ResourceLocator_Directive)(nil), "xds.core.v3.ResourceLocator.Directive")
}
func init() { proto.RegisterFile("xds/core/v3/resource_locator.proto", fileDescriptor_eb09b3779eaf3665) }
var fileDescriptor_eb09b3779eaf3665 = []byte{
// 481 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0x41, 0x6f, 0xd3, 0x30,
0x14, 0xc7, 0xeb, 0xb4, 0x0d, 0x8d, 0xbb, 0x8d, 0xc8, 0x42, 0x2c, 0x84, 0x22, 0xa2, 0x82, 0xa0,
0x12, 0x34, 0x99, 0xd2, 0x03, 0x02, 0x89, 0xc3, 0xcc, 0x36, 0x15, 0x69, 0x87, 0x28, 0xeb, 0x01,
0xc1, 0x20, 0xf2, 0x12, 0x43, 0x2d, 0xb5, 0x71, 0x64, 0x3b, 0x55, 0xcb, 0x01, 0x21, 0x4e, 0x9c,
0xf8, 0x40, 0x7c, 0x02, 0xae, 0x7c, 0x1b, 0xd4, 0x13, 0x4a, 0xd2, 0x76, 0xdd, 0x0e, 0xbb, 0x59,
0xef, 0xfd, 0xde, 0xd3, 0xff, 0xfd, 0xfd, 0x87, 0xdd, 0x79, 0x22, 0xbd, 0x98, 0x0b, 0xea, 0xcd,
0x06, 0x9e, 0xa0, 0x92, 0xe7, 0x22, 0xa6, 0xd1, 0x84, 0xc7, 0x44, 0x71, 0xe1, 0x66, 0x82, 0x2b,
0x8e, 0xda, 0xf3, 0x44, 0xba, 0x05, 0xe3, 0xce, 0x06, 0xf6, 0x83, 0x3c, 0xc9, 0x88, 0x47, 0xd2,
0x94, 0x2b, 0xa2, 0x18, 0x4f, 0xa5, 0x27, 0x15, 0x51, 0xb9, 0xac, 0x58, 0xdb, 0xd9, 0xde, 0x17,
0xf3, 0x54, 0xd1, 0xb9, 0x8a, 0x32, 0x22, 0xc8, 0x74, 0x4d, 0xec, 0xcf, 0xc8, 0x84, 0x25, 0x44,
0x51, 0x6f, 0xfd, 0xa8, 0x1a, 0xdd, 0x5f, 0x0d, 0x78, 0x3b, 0x5c, 0x29, 0x38, 0xad, 0x04, 0xa0,
0x63, 0xa8, 0xcb, 0x78, 0x4c, 0xa7, 0xd4, 0x02, 0x0e, 0xe8, 0xed, 0xf9, 0x8f, 0xdc, 0x2d, 0x2d,
0xee, 0x35, 0xda, 0x3d, 0x2b, 0x51, 0xdc, 0x5a, 0xe2, 0xe6, 0x0f, 0xa0, 0x99, 0x20, 0x5c, 0x0d,
0xa3, 0x3d, 0xa8, 0xb1, 0xc4, 0xd2, 0x1c, 0xd0, 0x33, 0x42, 0x8d, 0x25, 0xa8, 0x03, 0x0d, 0x92,
0xab, 0x31, 0x17, 0x4c, 0x2d, 0xac, 0x7a, 0x59, 0xbe, 0x2c, 0xa0, 0xe7, 0x70, 0x77, 0xe3, 0x84,
0x5a, 0x64, 0xd4, 0x6a, 0x14, 0x04, 0xbe, 0xb5, 0xc4, 0x0d, 0x51, 0x6c, 0xdd, 0x59, 0x77, 0x47,
0x8b, 0x8c, 0xa2, 0x43, 0xb8, 0x4b, 0xe7, 0x24, 0x56, 0xd1, 0xea, 0x5a, 0xab, 0xe9, 0x80, 0x5e,
0xdb, 0xb7, 0xaf, 0x28, 0x7d, 0x53, 0xf5, 0x82, 0xd2, 0x88, 0x61, 0x2d, 0xdc, 0x29, 0x47, 0x56,
0x55, 0x74, 0x02, 0x61, 0xc2, 0x04, 0x8d, 0x15, 0x9b, 0x51, 0x69, 0xe9, 0x4e, 0xbd, 0xd7, 0xf6,
0x9f, 0xdc, 0x78, 0xe9, 0xd1, 0x1a, 0x0f, 0xb7, 0x26, 0xed, 0x9f, 0x00, 0x1a, 0x9b, 0x0e, 0x3a,
0x80, 0x75, 0x32, 0x51, 0xa5, 0x71, 0x6d, 0xbf, 0x73, 0xd3, 0xba, 0x61, 0x2d, 0x2c, 0x50, 0xf4,
0x02, 0x36, 0x69, 0xaa, 0xc4, 0xa2, 0x72, 0x0a, 0x3f, 0x5c, 0xe2, 0x8e, 0xb0, 0x4d, 0xe0, 0xdf,
0xfd, 0xf4, 0xe1, 0xa0, 0xff, 0x92, 0xf4, 0xbf, 0x1e, 0xf6, 0xdf, 0x47, 0xe7, 0xfd, 0x73, 0xd7,
0xfb, 0xf6, 0xea, 0xe3, 0xb3, 0xc7, 0xc3, 0x5a, 0x58, 0xf1, 0xd8, 0x84, 0xc6, 0x46, 0x06, 0xaa,
0xff, 0xc3, 0xa0, 0xfb, 0x14, 0xea, 0xd5, 0x6f, 0x20, 0x03, 0x36, 0xdf, 0x1d, 0x9d, 0x8d, 0x02,
0xb3, 0x86, 0x5a, 0xb0, 0x31, 0x1c, 0x8d, 0x02, 0x13, 0x14, 0xaf, 0x93, 0xb7, 0xa7, 0xc7, 0xa6,
0x86, 0xef, 0xc1, 0xfd, 0x2b, 0x31, 0x89, 0x64, 0x46, 0x63, 0xf6, 0x99, 0x51, 0x81, 0x5f, 0xff,
0xfe, 0xfe, 0xe7, 0xaf, 0xae, 0xb5, 0x00, 0xbc, 0x1f, 0xf3, 0xa9, 0xfb, 0x85, 0xa9, 0x71, 0x7e,
0xe1, 0x16, 0xf9, 0xdb, 0x3e, 0x06, 0xdf, 0xb9, 0x76, 0x4d, 0x50, 0xa4, 0x29, 0x00, 0x17, 0x7a,
0x19, 0xab, 0xc1, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff, 0x46, 0x23, 0x9e, 0xd8, 0xe3, 0x02, 0x00,
0x00,
}

View file

@ -0,0 +1,258 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: xds/core/v3/resource_locator.proto
package xds_core_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _resource_locator_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on ResourceLocator with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *ResourceLocator) Validate() error {
if m == nil {
return nil
}
if _, ok := ResourceLocator_Scheme_name[int32(m.GetScheme())]; !ok {
return ResourceLocatorValidationError{
field: "Scheme",
reason: "value must be one of the defined enum values",
}
}
// no validation rules for Id
// no validation rules for Authority
if utf8.RuneCountInString(m.GetResourceType()) < 1 {
return ResourceLocatorValidationError{
field: "ResourceType",
reason: "value length must be at least 1 runes",
}
}
for idx, item := range m.GetDirectives() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ResourceLocatorValidationError{
field: fmt.Sprintf("Directives[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
switch m.ContextParamSpecifier.(type) {
case *ResourceLocator_ExactContext:
if v, ok := interface{}(m.GetExactContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ResourceLocatorValidationError{
field: "ExactContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// ResourceLocatorValidationError is the validation error returned by
// ResourceLocator.Validate if the designated constraints aren't met.
type ResourceLocatorValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ResourceLocatorValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ResourceLocatorValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ResourceLocatorValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ResourceLocatorValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ResourceLocatorValidationError) ErrorName() string { return "ResourceLocatorValidationError" }
// Error satisfies the builtin error interface
func (e ResourceLocatorValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sResourceLocator.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ResourceLocatorValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ResourceLocatorValidationError{}
// Validate checks the field values on ResourceLocator_Directive with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *ResourceLocator_Directive) Validate() error {
if m == nil {
return nil
}
switch m.Directive.(type) {
case *ResourceLocator_Directive_Alt:
if v, ok := interface{}(m.GetAlt()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ResourceLocator_DirectiveValidationError{
field: "Alt",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *ResourceLocator_Directive_Entry:
if utf8.RuneCountInString(m.GetEntry()) < 1 {
return ResourceLocator_DirectiveValidationError{
field: "Entry",
reason: "value length must be at least 1 runes",
}
}
if !_ResourceLocator_Directive_Entry_Pattern.MatchString(m.GetEntry()) {
return ResourceLocator_DirectiveValidationError{
field: "Entry",
reason: "value does not match regex pattern \"^[0-9a-zA-Z_\\\\-\\\\./~:]+$\"",
}
}
default:
return ResourceLocator_DirectiveValidationError{
field: "Directive",
reason: "value is required",
}
}
return nil
}
// ResourceLocator_DirectiveValidationError is the validation error returned by
// ResourceLocator_Directive.Validate if the designated constraints aren't met.
type ResourceLocator_DirectiveValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ResourceLocator_DirectiveValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ResourceLocator_DirectiveValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ResourceLocator_DirectiveValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ResourceLocator_DirectiveValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ResourceLocator_DirectiveValidationError) ErrorName() string {
return "ResourceLocator_DirectiveValidationError"
}
// Error satisfies the builtin error interface
func (e ResourceLocator_DirectiveValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sResourceLocator_Directive.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ResourceLocator_DirectiveValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ResourceLocator_DirectiveValidationError{}
var _ResourceLocator_Directive_Entry_Pattern = regexp.MustCompile("^[0-9a-zA-Z_\\-\\./~:]+$")

View file

@ -0,0 +1,113 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: xds/core/v3/resource_name.proto
package xds_core_v3
import (
fmt "fmt"
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type ResourceName struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Authority string `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"`
ResourceType string `protobuf:"bytes,3,opt,name=resource_type,json=resourceType,proto3" json:"resource_type,omitempty"`
Context *ContextParams `protobuf:"bytes,4,opt,name=context,proto3" json:"context,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ResourceName) Reset() { *m = ResourceName{} }
func (m *ResourceName) String() string { return proto.CompactTextString(m) }
func (*ResourceName) ProtoMessage() {}
func (*ResourceName) Descriptor() ([]byte, []int) {
return fileDescriptor_142e5d243416c11e, []int{0}
}
func (m *ResourceName) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResourceName.Unmarshal(m, b)
}
func (m *ResourceName) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ResourceName.Marshal(b, m, deterministic)
}
func (m *ResourceName) XXX_Merge(src proto.Message) {
xxx_messageInfo_ResourceName.Merge(m, src)
}
func (m *ResourceName) XXX_Size() int {
return xxx_messageInfo_ResourceName.Size(m)
}
func (m *ResourceName) XXX_DiscardUnknown() {
xxx_messageInfo_ResourceName.DiscardUnknown(m)
}
var xxx_messageInfo_ResourceName proto.InternalMessageInfo
func (m *ResourceName) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *ResourceName) GetAuthority() string {
if m != nil {
return m.Authority
}
return ""
}
func (m *ResourceName) GetResourceType() string {
if m != nil {
return m.ResourceType
}
return ""
}
func (m *ResourceName) GetContext() *ContextParams {
if m != nil {
return m.Context
}
return nil
}
func init() {
proto.RegisterType((*ResourceName)(nil), "xds.core.v3.ResourceName")
}
func init() { proto.RegisterFile("xds/core/v3/resource_name.proto", fileDescriptor_142e5d243416c11e) }
var fileDescriptor_142e5d243416c11e = []byte{
// 271 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x4c, 0x90, 0x31, 0x4e, 0xc3, 0x30,
0x14, 0x86, 0xe5, 0x50, 0xb5, 0xd4, 0x2d, 0x08, 0xb2, 0x10, 0x05, 0x10, 0x11, 0x53, 0x07, 0x64,
0x4b, 0x84, 0x89, 0x31, 0xec, 0x28, 0x8a, 0xd8, 0xab, 0xd7, 0xd8, 0xa2, 0x96, 0x48, 0x1c, 0xd9,
0xcf, 0x51, 0xb2, 0x71, 0x14, 0xce, 0xc1, 0x09, 0x58, 0xb9, 0x0e, 0x13, 0x4a, 0xd2, 0x40, 0x36,
0xeb, 0xfd, 0x9f, 0xed, 0xff, 0x7b, 0xf4, 0xa6, 0x11, 0x96, 0xe7, 0xda, 0x48, 0x5e, 0xc7, 0xdc,
0x48, 0xab, 0x9d, 0xc9, 0xe5, 0xb6, 0x84, 0x42, 0xb2, 0xca, 0x68, 0xd4, 0xfe, 0xaa, 0x11, 0x96,
0x75, 0x00, 0xab, 0xe3, 0xf0, 0xda, 0x89, 0x0a, 0x38, 0x94, 0xa5, 0x46, 0x40, 0xa5, 0x4b, 0xcb,
0x2d, 0x02, 0x3a, 0x3b, 0xb0, 0x61, 0x34, 0x7d, 0x2c, 0xd7, 0x25, 0xca, 0x06, 0xb7, 0x15, 0x18,
0x28, 0x46, 0xe2, 0xa2, 0x86, 0x37, 0x25, 0x00, 0x25, 0x1f, 0x0f, 0x43, 0x70, 0xfb, 0x41, 0xe8,
0x3a, 0x3b, 0x7c, 0xff, 0x0c, 0x85, 0xf4, 0x4f, 0xa9, 0xa7, 0x44, 0x40, 0x22, 0xb2, 0x59, 0x66,
0x9e, 0x12, 0xfe, 0x15, 0x5d, 0x82, 0xc3, 0xbd, 0x36, 0x0a, 0xdb, 0xc0, 0xeb, 0xc7, 0xff, 0x03,
0xff, 0x8e, 0x9e, 0xfc, 0x95, 0xc7, 0xb6, 0x92, 0xc1, 0x51, 0x47, 0x24, 0x8b, 0x9f, 0x64, 0x66,
0xbc, 0x33, 0x92, 0xad, 0xc7, 0xf4, 0xa5, 0xad, 0xa4, 0xff, 0x40, 0x17, 0x87, 0x76, 0xc1, 0x2c,
0x22, 0x9b, 0xd5, 0x7d, 0xc8, 0x26, 0x96, 0xec, 0x69, 0xc8, 0xd2, 0xbe, 0x78, 0x36, 0xa2, 0xc9,
0xe3, 0xe7, 0xfb, 0xd7, 0xf7, 0xdc, 0x3b, 0x26, 0xf4, 0x32, 0xd7, 0x05, 0x7b, 0x55, 0xb8, 0x77,
0x3b, 0xd6, 0x6d, 0x64, 0x7a, 0x3b, 0x39, 0x9f, 0x6a, 0xa4, 0x9d, 0x5c, 0x4a, 0x76, 0xf3, 0xde,
0x32, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x8a, 0x99, 0xd1, 0xf6, 0x6f, 0x01, 0x00, 0x00,
}

View file

@ -0,0 +1,123 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: xds/core/v3/resource_name.proto
package xds_core_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// define the regex for a UUID once up-front
var _resource_name_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
// Validate checks the field values on ResourceName with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *ResourceName) Validate() error {
if m == nil {
return nil
}
// no validation rules for Id
// no validation rules for Authority
if utf8.RuneCountInString(m.GetResourceType()) < 1 {
return ResourceNameValidationError{
field: "ResourceType",
reason: "value length must be at least 1 runes",
}
}
if v, ok := interface{}(m.GetContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ResourceNameValidationError{
field: "Context",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// ResourceNameValidationError is the validation error returned by
// ResourceName.Validate if the designated constraints aren't met.
type ResourceNameValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ResourceNameValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ResourceNameValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ResourceNameValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ResourceNameValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ResourceNameValidationError) ErrorName() string { return "ResourceNameValidationError" }
// Error satisfies the builtin error interface
func (e ResourceNameValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sResourceName.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ResourceNameValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ResourceNameValidationError{}

201
vendor/github.com/envoyproxy/go-control-plane/LICENSE generated vendored Normal file
View file

@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright {yyyy} {name of copyright owner}
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.

View file

@ -0,0 +1,607 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/certs.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
timestamp "github.com/golang/protobuf/ptypes/timestamp"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Proto representation of certificate details. Admin endpoint uses this wrapper for `/certs` to
// display certificate information. See :ref:`/certs <operations_admin_interface_certs>` for more
// information.
type Certificates struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// List of certificates known to an Envoy.
Certificates []*Certificate `protobuf:"bytes,1,rep,name=certificates,proto3" json:"certificates,omitempty"`
}
func (x *Certificates) Reset() {
*x = Certificates{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Certificates) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Certificates) ProtoMessage() {}
func (x *Certificates) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Certificates.ProtoReflect.Descriptor instead.
func (*Certificates) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_certs_proto_rawDescGZIP(), []int{0}
}
func (x *Certificates) GetCertificates() []*Certificate {
if x != nil {
return x.Certificates
}
return nil
}
type Certificate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Details of CA certificate.
CaCert []*CertificateDetails `protobuf:"bytes,1,rep,name=ca_cert,json=caCert,proto3" json:"ca_cert,omitempty"`
// Details of Certificate Chain
CertChain []*CertificateDetails `protobuf:"bytes,2,rep,name=cert_chain,json=certChain,proto3" json:"cert_chain,omitempty"`
}
func (x *Certificate) Reset() {
*x = Certificate{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Certificate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Certificate) ProtoMessage() {}
func (x *Certificate) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Certificate.ProtoReflect.Descriptor instead.
func (*Certificate) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_certs_proto_rawDescGZIP(), []int{1}
}
func (x *Certificate) GetCaCert() []*CertificateDetails {
if x != nil {
return x.CaCert
}
return nil
}
func (x *Certificate) GetCertChain() []*CertificateDetails {
if x != nil {
return x.CertChain
}
return nil
}
// [#next-free-field: 8]
type CertificateDetails struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Path of the certificate.
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
// Certificate Serial Number.
SerialNumber string `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
// List of Subject Alternate names.
SubjectAltNames []*SubjectAlternateName `protobuf:"bytes,3,rep,name=subject_alt_names,json=subjectAltNames,proto3" json:"subject_alt_names,omitempty"`
// Minimum of days until expiration of certificate and it's chain.
DaysUntilExpiration uint64 `protobuf:"varint,4,opt,name=days_until_expiration,json=daysUntilExpiration,proto3" json:"days_until_expiration,omitempty"`
// Indicates the time from which the certificate is valid.
ValidFrom *timestamp.Timestamp `protobuf:"bytes,5,opt,name=valid_from,json=validFrom,proto3" json:"valid_from,omitempty"`
// Indicates the time at which the certificate expires.
ExpirationTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=expiration_time,json=expirationTime,proto3" json:"expiration_time,omitempty"`
// Details related to the OCSP response associated with this certificate, if any.
OcspDetails *CertificateDetails_OcspDetails `protobuf:"bytes,7,opt,name=ocsp_details,json=ocspDetails,proto3" json:"ocsp_details,omitempty"`
}
func (x *CertificateDetails) Reset() {
*x = CertificateDetails{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CertificateDetails) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CertificateDetails) ProtoMessage() {}
func (x *CertificateDetails) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CertificateDetails.ProtoReflect.Descriptor instead.
func (*CertificateDetails) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_certs_proto_rawDescGZIP(), []int{2}
}
func (x *CertificateDetails) GetPath() string {
if x != nil {
return x.Path
}
return ""
}
func (x *CertificateDetails) GetSerialNumber() string {
if x != nil {
return x.SerialNumber
}
return ""
}
func (x *CertificateDetails) GetSubjectAltNames() []*SubjectAlternateName {
if x != nil {
return x.SubjectAltNames
}
return nil
}
func (x *CertificateDetails) GetDaysUntilExpiration() uint64 {
if x != nil {
return x.DaysUntilExpiration
}
return 0
}
func (x *CertificateDetails) GetValidFrom() *timestamp.Timestamp {
if x != nil {
return x.ValidFrom
}
return nil
}
func (x *CertificateDetails) GetExpirationTime() *timestamp.Timestamp {
if x != nil {
return x.ExpirationTime
}
return nil
}
func (x *CertificateDetails) GetOcspDetails() *CertificateDetails_OcspDetails {
if x != nil {
return x.OcspDetails
}
return nil
}
type SubjectAlternateName struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Subject Alternate Name.
//
// Types that are assignable to Name:
// *SubjectAlternateName_Dns
// *SubjectAlternateName_Uri
// *SubjectAlternateName_IpAddress
Name isSubjectAlternateName_Name `protobuf_oneof:"name"`
}
func (x *SubjectAlternateName) Reset() {
*x = SubjectAlternateName{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubjectAlternateName) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubjectAlternateName) ProtoMessage() {}
func (x *SubjectAlternateName) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SubjectAlternateName.ProtoReflect.Descriptor instead.
func (*SubjectAlternateName) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_certs_proto_rawDescGZIP(), []int{3}
}
func (m *SubjectAlternateName) GetName() isSubjectAlternateName_Name {
if m != nil {
return m.Name
}
return nil
}
func (x *SubjectAlternateName) GetDns() string {
if x, ok := x.GetName().(*SubjectAlternateName_Dns); ok {
return x.Dns
}
return ""
}
func (x *SubjectAlternateName) GetUri() string {
if x, ok := x.GetName().(*SubjectAlternateName_Uri); ok {
return x.Uri
}
return ""
}
func (x *SubjectAlternateName) GetIpAddress() string {
if x, ok := x.GetName().(*SubjectAlternateName_IpAddress); ok {
return x.IpAddress
}
return ""
}
type isSubjectAlternateName_Name interface {
isSubjectAlternateName_Name()
}
type SubjectAlternateName_Dns struct {
Dns string `protobuf:"bytes,1,opt,name=dns,proto3,oneof"`
}
type SubjectAlternateName_Uri struct {
Uri string `protobuf:"bytes,2,opt,name=uri,proto3,oneof"`
}
type SubjectAlternateName_IpAddress struct {
IpAddress string `protobuf:"bytes,3,opt,name=ip_address,json=ipAddress,proto3,oneof"`
}
func (*SubjectAlternateName_Dns) isSubjectAlternateName_Name() {}
func (*SubjectAlternateName_Uri) isSubjectAlternateName_Name() {}
func (*SubjectAlternateName_IpAddress) isSubjectAlternateName_Name() {}
type CertificateDetails_OcspDetails struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Indicates the time from which the OCSP response is valid.
ValidFrom *timestamp.Timestamp `protobuf:"bytes,1,opt,name=valid_from,json=validFrom,proto3" json:"valid_from,omitempty"`
// Indicates the time at which the OCSP response expires.
Expiration *timestamp.Timestamp `protobuf:"bytes,2,opt,name=expiration,proto3" json:"expiration,omitempty"`
}
func (x *CertificateDetails_OcspDetails) Reset() {
*x = CertificateDetails_OcspDetails{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CertificateDetails_OcspDetails) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CertificateDetails_OcspDetails) ProtoMessage() {}
func (x *CertificateDetails_OcspDetails) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_certs_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CertificateDetails_OcspDetails.ProtoReflect.Descriptor instead.
func (*CertificateDetails_OcspDetails) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_certs_proto_rawDescGZIP(), []int{2, 0}
}
func (x *CertificateDetails_OcspDetails) GetValidFrom() *timestamp.Timestamp {
if x != nil {
return x.ValidFrom
}
return nil
}
func (x *CertificateDetails_OcspDetails) GetExpiration() *timestamp.Timestamp {
if x != nil {
return x.Expiration
}
return nil
}
var File_envoy_admin_v3_certs_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_certs_proto_rawDesc = []byte{
0x0a, 0x1a, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x63, 0x65, 0x72, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x1a, 0x1f, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75,
0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64,
0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0x78, 0x0a, 0x0c, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x12,
0x3f, 0x0a, 0x0c, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64,
0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
0x74, 0x65, 0x52, 0x0c, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73,
0x3a, 0x27, 0x9a, 0xc5, 0x88, 0x1e, 0x22, 0x0a, 0x20, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x65, 0x72,
0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x0b, 0x43, 0x65,
0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x07, 0x63, 0x61, 0x5f,
0x63, 0x65, 0x72, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x65, 0x72, 0x74,
0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x06,
0x63, 0x61, 0x43, 0x65, 0x72, 0x74, 0x12, 0x41, 0x0a, 0x0a, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x63,
0x68, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x65, 0x72, 0x74,
0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09,
0x63, 0x65, 0x72, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x3a, 0x26, 0x9a, 0xc5, 0x88, 0x1e, 0x21,
0x0a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
0x65, 0x22, 0xdc, 0x04, 0x0a, 0x12, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d,
0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65,
0x72, 0x12, 0x50, 0x0a, 0x11, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6c, 0x74,
0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x53, 0x75,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x4e, 0x61,
0x6d, 0x65, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x4e, 0x61,
0x6d, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69,
0x6c, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01,
0x28, 0x04, 0x52, 0x13, 0x64, 0x61, 0x79, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x45, 0x78, 0x70,
0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64,
0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x72,
0x6f, 0x6d, 0x12, 0x43, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x0c, 0x6f, 0x63, 0x73, 0x70, 0x5f,
0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x43,
0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
0x73, 0x2e, 0x4f, 0x63, 0x73, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x6f,
0x63, 0x73, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x84, 0x01, 0x0a, 0x0b, 0x4f,
0x63, 0x73, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x76, 0x61,
0x6c, 0x69, 0x64, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x69,
0x64, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x3a, 0x2d, 0x9a, 0xc5, 0x88, 0x1e, 0x28, 0x0a, 0x26, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x65,
0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
0x22, 0x98, 0x01, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x03, 0x64, 0x6e, 0x73,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x64, 0x6e, 0x73, 0x12, 0x12, 0x0a,
0x03, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x75, 0x72,
0x69, 0x12, 0x1f, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65,
0x73, 0x73, 0x3a, 0x2f, 0x9a, 0xc5, 0x88, 0x1e, 0x2a, 0x0a, 0x28, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53,
0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x4e,
0x61, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x34, 0x0a, 0x1c, 0x69,
0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0a, 0x43, 0x65, 0x72,
0x74, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10,
0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_certs_proto_rawDescOnce sync.Once
file_envoy_admin_v3_certs_proto_rawDescData = file_envoy_admin_v3_certs_proto_rawDesc
)
func file_envoy_admin_v3_certs_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_certs_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_certs_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_certs_proto_rawDescData)
})
return file_envoy_admin_v3_certs_proto_rawDescData
}
var file_envoy_admin_v3_certs_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_envoy_admin_v3_certs_proto_goTypes = []interface{}{
(*Certificates)(nil), // 0: envoy.admin.v3.Certificates
(*Certificate)(nil), // 1: envoy.admin.v3.Certificate
(*CertificateDetails)(nil), // 2: envoy.admin.v3.CertificateDetails
(*SubjectAlternateName)(nil), // 3: envoy.admin.v3.SubjectAlternateName
(*CertificateDetails_OcspDetails)(nil), // 4: envoy.admin.v3.CertificateDetails.OcspDetails
(*timestamp.Timestamp)(nil), // 5: google.protobuf.Timestamp
}
var file_envoy_admin_v3_certs_proto_depIdxs = []int32{
1, // 0: envoy.admin.v3.Certificates.certificates:type_name -> envoy.admin.v3.Certificate
2, // 1: envoy.admin.v3.Certificate.ca_cert:type_name -> envoy.admin.v3.CertificateDetails
2, // 2: envoy.admin.v3.Certificate.cert_chain:type_name -> envoy.admin.v3.CertificateDetails
3, // 3: envoy.admin.v3.CertificateDetails.subject_alt_names:type_name -> envoy.admin.v3.SubjectAlternateName
5, // 4: envoy.admin.v3.CertificateDetails.valid_from:type_name -> google.protobuf.Timestamp
5, // 5: envoy.admin.v3.CertificateDetails.expiration_time:type_name -> google.protobuf.Timestamp
4, // 6: envoy.admin.v3.CertificateDetails.ocsp_details:type_name -> envoy.admin.v3.CertificateDetails.OcspDetails
5, // 7: envoy.admin.v3.CertificateDetails.OcspDetails.valid_from:type_name -> google.protobuf.Timestamp
5, // 8: envoy.admin.v3.CertificateDetails.OcspDetails.expiration:type_name -> google.protobuf.Timestamp
9, // [9:9] is the sub-list for method output_type
9, // [9:9] is the sub-list for method input_type
9, // [9:9] is the sub-list for extension type_name
9, // [9:9] is the sub-list for extension extendee
0, // [0:9] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_certs_proto_init() }
func file_envoy_admin_v3_certs_proto_init() {
if File_envoy_admin_v3_certs_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_certs_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Certificates); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_certs_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Certificate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_certs_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CertificateDetails); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_certs_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubjectAlternateName); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_certs_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CertificateDetails_OcspDetails); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_envoy_admin_v3_certs_proto_msgTypes[3].OneofWrappers = []interface{}{
(*SubjectAlternateName_Dns)(nil),
(*SubjectAlternateName_Uri)(nil),
(*SubjectAlternateName_IpAddress)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_certs_proto_rawDesc,
NumEnums: 0,
NumMessages: 5,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_certs_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_certs_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_certs_proto_msgTypes,
}.Build()
File_envoy_admin_v3_certs_proto = out.File
file_envoy_admin_v3_certs_proto_rawDesc = nil
file_envoy_admin_v3_certs_proto_goTypes = nil
file_envoy_admin_v3_certs_proto_depIdxs = nil
}

View file

@ -0,0 +1,495 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/certs.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on Certificates with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *Certificates) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetCertificates() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificatesValidationError{
field: fmt.Sprintf("Certificates[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// CertificatesValidationError is the validation error returned by
// Certificates.Validate if the designated constraints aren't met.
type CertificatesValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CertificatesValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CertificatesValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CertificatesValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CertificatesValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CertificatesValidationError) ErrorName() string { return "CertificatesValidationError" }
// Error satisfies the builtin error interface
func (e CertificatesValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCertificates.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CertificatesValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CertificatesValidationError{}
// Validate checks the field values on Certificate with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *Certificate) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetCaCert() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationError{
field: fmt.Sprintf("CaCert[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
for idx, item := range m.GetCertChain() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationError{
field: fmt.Sprintf("CertChain[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// CertificateValidationError is the validation error returned by
// Certificate.Validate if the designated constraints aren't met.
type CertificateValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CertificateValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CertificateValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CertificateValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CertificateValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CertificateValidationError) ErrorName() string { return "CertificateValidationError" }
// Error satisfies the builtin error interface
func (e CertificateValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCertificate.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CertificateValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CertificateValidationError{}
// Validate checks the field values on CertificateDetails with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CertificateDetails) Validate() error {
if m == nil {
return nil
}
// no validation rules for Path
// no validation rules for SerialNumber
for idx, item := range m.GetSubjectAltNames() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateDetailsValidationError{
field: fmt.Sprintf("SubjectAltNames[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
// no validation rules for DaysUntilExpiration
if v, ok := interface{}(m.GetValidFrom()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateDetailsValidationError{
field: "ValidFrom",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetExpirationTime()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateDetailsValidationError{
field: "ExpirationTime",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetOcspDetails()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateDetailsValidationError{
field: "OcspDetails",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// CertificateDetailsValidationError is the validation error returned by
// CertificateDetails.Validate if the designated constraints aren't met.
type CertificateDetailsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CertificateDetailsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CertificateDetailsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CertificateDetailsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CertificateDetailsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CertificateDetailsValidationError) ErrorName() string {
return "CertificateDetailsValidationError"
}
// Error satisfies the builtin error interface
func (e CertificateDetailsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCertificateDetails.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CertificateDetailsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CertificateDetailsValidationError{}
// Validate checks the field values on SubjectAlternateName with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *SubjectAlternateName) Validate() error {
if m == nil {
return nil
}
switch m.Name.(type) {
case *SubjectAlternateName_Dns:
// no validation rules for Dns
case *SubjectAlternateName_Uri:
// no validation rules for Uri
case *SubjectAlternateName_IpAddress:
// no validation rules for IpAddress
}
return nil
}
// SubjectAlternateNameValidationError is the validation error returned by
// SubjectAlternateName.Validate if the designated constraints aren't met.
type SubjectAlternateNameValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e SubjectAlternateNameValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e SubjectAlternateNameValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e SubjectAlternateNameValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e SubjectAlternateNameValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e SubjectAlternateNameValidationError) ErrorName() string {
return "SubjectAlternateNameValidationError"
}
// Error satisfies the builtin error interface
func (e SubjectAlternateNameValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sSubjectAlternateName.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = SubjectAlternateNameValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = SubjectAlternateNameValidationError{}
// Validate checks the field values on CertificateDetails_OcspDetails with the
// rules defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CertificateDetails_OcspDetails) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetValidFrom()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateDetails_OcspDetailsValidationError{
field: "ValidFrom",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetExpiration()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateDetails_OcspDetailsValidationError{
field: "Expiration",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// CertificateDetails_OcspDetailsValidationError is the validation error
// returned by CertificateDetails_OcspDetails.Validate if the designated
// constraints aren't met.
type CertificateDetails_OcspDetailsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CertificateDetails_OcspDetailsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CertificateDetails_OcspDetailsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CertificateDetails_OcspDetailsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CertificateDetails_OcspDetailsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CertificateDetails_OcspDetailsValidationError) ErrorName() string {
return "CertificateDetails_OcspDetailsValidationError"
}
// Error satisfies the builtin error interface
func (e CertificateDetails_OcspDetailsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCertificateDetails_OcspDetails.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CertificateDetails_OcspDetailsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CertificateDetails_OcspDetailsValidationError{}

View file

@ -0,0 +1,733 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/clusters.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
v31 "github.com/envoyproxy/go-control-plane/envoy/config/cluster/v3"
v32 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
v3 "github.com/envoyproxy/go-control-plane/envoy/type/v3"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Admin endpoint uses this wrapper for `/clusters` to display cluster status information.
// See :ref:`/clusters <operations_admin_interface_clusters>` for more information.
type Clusters struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Mapping from cluster name to each cluster's status.
ClusterStatuses []*ClusterStatus `protobuf:"bytes,1,rep,name=cluster_statuses,json=clusterStatuses,proto3" json:"cluster_statuses,omitempty"`
}
func (x *Clusters) Reset() {
*x = Clusters{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Clusters) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Clusters) ProtoMessage() {}
func (x *Clusters) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Clusters.ProtoReflect.Descriptor instead.
func (*Clusters) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_clusters_proto_rawDescGZIP(), []int{0}
}
func (x *Clusters) GetClusterStatuses() []*ClusterStatus {
if x != nil {
return x.ClusterStatuses
}
return nil
}
// Details an individual cluster's current status.
// [#next-free-field: 8]
type ClusterStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the cluster.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Denotes whether this cluster was added via API or configured statically.
AddedViaApi bool `protobuf:"varint,2,opt,name=added_via_api,json=addedViaApi,proto3" json:"added_via_api,omitempty"`
// The success rate threshold used in the last interval.
// If
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
// is *false*, all errors: externally and locally generated were used to calculate the threshold.
// If
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
// is *true*, only externally generated errors were used to calculate the threshold.
// The threshold is used to eject hosts based on their success rate. See
// :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for details.
//
// Note: this field may be omitted in any of the three following cases:
//
// 1. There were not enough hosts with enough request volume to proceed with success rate based
// outlier ejection.
// 2. The threshold is computed to be < 0 because a negative value implies that there was no
// threshold for that interval.
// 3. Outlier detection is not enabled for this cluster.
SuccessRateEjectionThreshold *v3.Percent `protobuf:"bytes,3,opt,name=success_rate_ejection_threshold,json=successRateEjectionThreshold,proto3" json:"success_rate_ejection_threshold,omitempty"`
// Mapping from host address to the host's current status.
HostStatuses []*HostStatus `protobuf:"bytes,4,rep,name=host_statuses,json=hostStatuses,proto3" json:"host_statuses,omitempty"`
// The success rate threshold used in the last interval when only locally originated failures were
// taken into account and externally originated errors were treated as success.
// This field should be interpreted only when
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
// is *true*. The threshold is used to eject hosts based on their success rate.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
// details.
//
// Note: this field may be omitted in any of the three following cases:
//
// 1. There were not enough hosts with enough request volume to proceed with success rate based
// outlier ejection.
// 2. The threshold is computed to be < 0 because a negative value implies that there was no
// threshold for that interval.
// 3. Outlier detection is not enabled for this cluster.
LocalOriginSuccessRateEjectionThreshold *v3.Percent `protobuf:"bytes,5,opt,name=local_origin_success_rate_ejection_threshold,json=localOriginSuccessRateEjectionThreshold,proto3" json:"local_origin_success_rate_ejection_threshold,omitempty"`
// :ref:`Circuit breaking <arch_overview_circuit_break>` settings of the cluster.
CircuitBreakers *v31.CircuitBreakers `protobuf:"bytes,6,opt,name=circuit_breakers,json=circuitBreakers,proto3" json:"circuit_breakers,omitempty"`
// Observability name of the cluster.
ObservabilityName string `protobuf:"bytes,7,opt,name=observability_name,json=observabilityName,proto3" json:"observability_name,omitempty"`
}
func (x *ClusterStatus) Reset() {
*x = ClusterStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ClusterStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ClusterStatus) ProtoMessage() {}
func (x *ClusterStatus) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ClusterStatus.ProtoReflect.Descriptor instead.
func (*ClusterStatus) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_clusters_proto_rawDescGZIP(), []int{1}
}
func (x *ClusterStatus) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ClusterStatus) GetAddedViaApi() bool {
if x != nil {
return x.AddedViaApi
}
return false
}
func (x *ClusterStatus) GetSuccessRateEjectionThreshold() *v3.Percent {
if x != nil {
return x.SuccessRateEjectionThreshold
}
return nil
}
func (x *ClusterStatus) GetHostStatuses() []*HostStatus {
if x != nil {
return x.HostStatuses
}
return nil
}
func (x *ClusterStatus) GetLocalOriginSuccessRateEjectionThreshold() *v3.Percent {
if x != nil {
return x.LocalOriginSuccessRateEjectionThreshold
}
return nil
}
func (x *ClusterStatus) GetCircuitBreakers() *v31.CircuitBreakers {
if x != nil {
return x.CircuitBreakers
}
return nil
}
func (x *ClusterStatus) GetObservabilityName() string {
if x != nil {
return x.ObservabilityName
}
return ""
}
// Current state of a particular host.
// [#next-free-field: 10]
type HostStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Address of this host.
Address *v32.Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
// List of stats specific to this host.
Stats []*SimpleMetric `protobuf:"bytes,2,rep,name=stats,proto3" json:"stats,omitempty"`
// The host's current health status.
HealthStatus *HostHealthStatus `protobuf:"bytes,3,opt,name=health_status,json=healthStatus,proto3" json:"health_status,omitempty"`
// Request success rate for this host over the last calculated interval.
// If
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
// is *false*, all errors: externally and locally generated were used in success rate
// calculation. If
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
// is *true*, only externally generated errors were used in success rate calculation.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
// details.
//
// Note: the message will not be present if host did not have enough request volume to calculate
// success rate or the cluster did not have enough hosts to run through success rate outlier
// ejection.
SuccessRate *v3.Percent `protobuf:"bytes,4,opt,name=success_rate,json=successRate,proto3" json:"success_rate,omitempty"`
// The host's weight. If not configured, the value defaults to 1.
Weight uint32 `protobuf:"varint,5,opt,name=weight,proto3" json:"weight,omitempty"`
// The hostname of the host, if applicable.
Hostname string `protobuf:"bytes,6,opt,name=hostname,proto3" json:"hostname,omitempty"`
// The host's priority. If not configured, the value defaults to 0 (highest priority).
Priority uint32 `protobuf:"varint,7,opt,name=priority,proto3" json:"priority,omitempty"`
// Request success rate for this host over the last calculated
// interval when only locally originated errors are taken into account and externally originated
// errors were treated as success.
// This field should be interpreted only when
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
// is *true*.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
// details.
//
// Note: the message will not be present if host did not have enough request volume to calculate
// success rate or the cluster did not have enough hosts to run through success rate outlier
// ejection.
LocalOriginSuccessRate *v3.Percent `protobuf:"bytes,8,opt,name=local_origin_success_rate,json=localOriginSuccessRate,proto3" json:"local_origin_success_rate,omitempty"`
// locality of the host.
Locality *v32.Locality `protobuf:"bytes,9,opt,name=locality,proto3" json:"locality,omitempty"`
}
func (x *HostStatus) Reset() {
*x = HostStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HostStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HostStatus) ProtoMessage() {}
func (x *HostStatus) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HostStatus.ProtoReflect.Descriptor instead.
func (*HostStatus) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_clusters_proto_rawDescGZIP(), []int{2}
}
func (x *HostStatus) GetAddress() *v32.Address {
if x != nil {
return x.Address
}
return nil
}
func (x *HostStatus) GetStats() []*SimpleMetric {
if x != nil {
return x.Stats
}
return nil
}
func (x *HostStatus) GetHealthStatus() *HostHealthStatus {
if x != nil {
return x.HealthStatus
}
return nil
}
func (x *HostStatus) GetSuccessRate() *v3.Percent {
if x != nil {
return x.SuccessRate
}
return nil
}
func (x *HostStatus) GetWeight() uint32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *HostStatus) GetHostname() string {
if x != nil {
return x.Hostname
}
return ""
}
func (x *HostStatus) GetPriority() uint32 {
if x != nil {
return x.Priority
}
return 0
}
func (x *HostStatus) GetLocalOriginSuccessRate() *v3.Percent {
if x != nil {
return x.LocalOriginSuccessRate
}
return nil
}
func (x *HostStatus) GetLocality() *v32.Locality {
if x != nil {
return x.Locality
}
return nil
}
// Health status for a host.
// [#next-free-field: 9]
type HostHealthStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The host is currently failing active health checks.
FailedActiveHealthCheck bool `protobuf:"varint,1,opt,name=failed_active_health_check,json=failedActiveHealthCheck,proto3" json:"failed_active_health_check,omitempty"`
// The host is currently considered an outlier and has been ejected.
FailedOutlierCheck bool `protobuf:"varint,2,opt,name=failed_outlier_check,json=failedOutlierCheck,proto3" json:"failed_outlier_check,omitempty"`
// The host is currently being marked as degraded through active health checking.
FailedActiveDegradedCheck bool `protobuf:"varint,4,opt,name=failed_active_degraded_check,json=failedActiveDegradedCheck,proto3" json:"failed_active_degraded_check,omitempty"`
// The host has been removed from service discovery, but is being stabilized due to active
// health checking.
PendingDynamicRemoval bool `protobuf:"varint,5,opt,name=pending_dynamic_removal,json=pendingDynamicRemoval,proto3" json:"pending_dynamic_removal,omitempty"`
// The host has not yet been health checked.
PendingActiveHc bool `protobuf:"varint,6,opt,name=pending_active_hc,json=pendingActiveHc,proto3" json:"pending_active_hc,omitempty"`
// The host should be excluded from panic, spillover, etc. calculations because it was explicitly
// taken out of rotation via protocol signal and is not meant to be routed to.
ExcludedViaImmediateHcFail bool `protobuf:"varint,7,opt,name=excluded_via_immediate_hc_fail,json=excludedViaImmediateHcFail,proto3" json:"excluded_via_immediate_hc_fail,omitempty"`
// The host failed active HC due to timeout.
ActiveHcTimeout bool `protobuf:"varint,8,opt,name=active_hc_timeout,json=activeHcTimeout,proto3" json:"active_hc_timeout,omitempty"`
// Health status as reported by EDS. Note: only HEALTHY and UNHEALTHY are currently supported
// here.
// [#comment:TODO(mrice32): pipe through remaining EDS health status possibilities.]
EdsHealthStatus v32.HealthStatus `protobuf:"varint,3,opt,name=eds_health_status,json=edsHealthStatus,proto3,enum=envoy.config.core.v3.HealthStatus" json:"eds_health_status,omitempty"`
}
func (x *HostHealthStatus) Reset() {
*x = HostHealthStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HostHealthStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HostHealthStatus) ProtoMessage() {}
func (x *HostHealthStatus) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_clusters_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HostHealthStatus.ProtoReflect.Descriptor instead.
func (*HostHealthStatus) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_clusters_proto_rawDescGZIP(), []int{3}
}
func (x *HostHealthStatus) GetFailedActiveHealthCheck() bool {
if x != nil {
return x.FailedActiveHealthCheck
}
return false
}
func (x *HostHealthStatus) GetFailedOutlierCheck() bool {
if x != nil {
return x.FailedOutlierCheck
}
return false
}
func (x *HostHealthStatus) GetFailedActiveDegradedCheck() bool {
if x != nil {
return x.FailedActiveDegradedCheck
}
return false
}
func (x *HostHealthStatus) GetPendingDynamicRemoval() bool {
if x != nil {
return x.PendingDynamicRemoval
}
return false
}
func (x *HostHealthStatus) GetPendingActiveHc() bool {
if x != nil {
return x.PendingActiveHc
}
return false
}
func (x *HostHealthStatus) GetExcludedViaImmediateHcFail() bool {
if x != nil {
return x.ExcludedViaImmediateHcFail
}
return false
}
func (x *HostHealthStatus) GetActiveHcTimeout() bool {
if x != nil {
return x.ActiveHcTimeout
}
return false
}
func (x *HostHealthStatus) GetEdsHealthStatus() v32.HealthStatus {
if x != nil {
return x.EdsHealthStatus
}
return v32.HealthStatus_UNKNOWN
}
var File_envoy_admin_v3_clusters_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_clusters_proto_rawDesc = []byte{
0x0a, 0x1d, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
0x0e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x1a,
0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33, 0x2f,
0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6c, 0x75, 0x73,
0x74, 0x65, 0x72, 0x2f, 0x76, 0x33, 0x2f, 0x63, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74, 0x5f, 0x62,
0x72, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f,
0x76, 0x33, 0x2f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x27, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f,
0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x63,
0x68, 0x65, 0x63, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e,
0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e,
0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x79, 0x0a, 0x08, 0x43, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x48, 0x0a, 0x10, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33,
0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0f,
0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x3a,
0x23, 0x9a, 0xc5, 0x88, 0x1e, 0x1e, 0x0a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64,
0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x6c, 0x75, 0x73,
0x74, 0x65, 0x72, 0x73, 0x22, 0x8c, 0x04, 0x0a, 0x0d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x64,
0x64, 0x65, 0x64, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x61, 0x70, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28,
0x08, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x65, 0x64, 0x56, 0x69, 0x61, 0x41, 0x70, 0x69, 0x12, 0x5d,
0x0a, 0x1f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x65,
0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x52,
0x1c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x45, 0x6a, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x3f, 0x0a,
0x0d, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x04,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d,
0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
0x52, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x75,
0x0a, 0x2c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x73,
0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6a, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70,
0x65, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x52, 0x27, 0x6c, 0x6f,
0x63, 0x61, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
0x52, 0x61, 0x74, 0x65, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x68, 0x72, 0x65,
0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x53, 0x0a, 0x10, 0x63, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74,
0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x28, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x75, 0x69,
0x74, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x0f, 0x63, 0x69, 0x72, 0x63, 0x75,
0x69, 0x74, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x6f, 0x62,
0x73, 0x65, 0x72, 0x76, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x62,
0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x28, 0x9a, 0xc5, 0x88, 0x1e, 0x23,
0x0a, 0x21, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x22, 0x81, 0x04, 0x0a, 0x0a, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74,
0x75, 0x73, 0x12, 0x37, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65,
0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x73,
0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x53, 0x69, 0x6d, 0x70,
0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x12,
0x45, 0x0a, 0x0d, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x48, 0x65, 0x61, 0x6c,
0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68,
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73,
0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x65, 0x72,
0x63, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74,
0x65, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73,
0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73,
0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74,
0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74,
0x79, 0x12, 0x51, 0x0a, 0x19, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69,
0x6e, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x08,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70,
0x65, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x52, 0x16, 0x6c, 0x6f,
0x63, 0x61, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
0x52, 0x61, 0x74, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79,
0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x4c, 0x6f,
0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79,
0x3a, 0x25, 0x9a, 0xc5, 0x88, 0x1e, 0x20, 0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x6f, 0x73,
0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x93, 0x04, 0x0a, 0x10, 0x48, 0x6f, 0x73, 0x74,
0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3b, 0x0a, 0x1a,
0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x68, 0x65,
0x61, 0x6c, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
0x52, 0x17, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x48, 0x65,
0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x61, 0x69,
0x6c, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x65, 0x63,
0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4f,
0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x3f, 0x0a, 0x1c, 0x66,
0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x67,
0x72, 0x61, 0x64, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28,
0x08, 0x52, 0x19, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44,
0x65, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x36, 0x0a, 0x17,
0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f,
0x72, 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x70,
0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52, 0x65, 0x6d,
0x6f, 0x76, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x68, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x48, 0x63,
0x12, 0x42, 0x0a, 0x1e, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x69, 0x61,
0x5f, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x68, 0x63, 0x5f, 0x66, 0x61,
0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64,
0x65, 0x64, 0x56, 0x69, 0x61, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x48, 0x63,
0x46, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x68,
0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x48, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
0x12, 0x4e, 0x0a, 0x11, 0x65, 0x64, 0x73, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x73,
0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
0x76, 0x33, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
0x0f, 0x65, 0x64, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
0x3a, 0x2b, 0x9a, 0xc5, 0x88, 0x1e, 0x26, 0x0a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x6f, 0x73,
0x74, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x37, 0x0a,
0x1c, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0d, 0x43,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80,
0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_clusters_proto_rawDescOnce sync.Once
file_envoy_admin_v3_clusters_proto_rawDescData = file_envoy_admin_v3_clusters_proto_rawDesc
)
func file_envoy_admin_v3_clusters_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_clusters_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_clusters_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_clusters_proto_rawDescData)
})
return file_envoy_admin_v3_clusters_proto_rawDescData
}
var file_envoy_admin_v3_clusters_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_envoy_admin_v3_clusters_proto_goTypes = []interface{}{
(*Clusters)(nil), // 0: envoy.admin.v3.Clusters
(*ClusterStatus)(nil), // 1: envoy.admin.v3.ClusterStatus
(*HostStatus)(nil), // 2: envoy.admin.v3.HostStatus
(*HostHealthStatus)(nil), // 3: envoy.admin.v3.HostHealthStatus
(*v3.Percent)(nil), // 4: envoy.type.v3.Percent
(*v31.CircuitBreakers)(nil), // 5: envoy.config.cluster.v3.CircuitBreakers
(*v32.Address)(nil), // 6: envoy.config.core.v3.Address
(*SimpleMetric)(nil), // 7: envoy.admin.v3.SimpleMetric
(*v32.Locality)(nil), // 8: envoy.config.core.v3.Locality
(v32.HealthStatus)(0), // 9: envoy.config.core.v3.HealthStatus
}
var file_envoy_admin_v3_clusters_proto_depIdxs = []int32{
1, // 0: envoy.admin.v3.Clusters.cluster_statuses:type_name -> envoy.admin.v3.ClusterStatus
4, // 1: envoy.admin.v3.ClusterStatus.success_rate_ejection_threshold:type_name -> envoy.type.v3.Percent
2, // 2: envoy.admin.v3.ClusterStatus.host_statuses:type_name -> envoy.admin.v3.HostStatus
4, // 3: envoy.admin.v3.ClusterStatus.local_origin_success_rate_ejection_threshold:type_name -> envoy.type.v3.Percent
5, // 4: envoy.admin.v3.ClusterStatus.circuit_breakers:type_name -> envoy.config.cluster.v3.CircuitBreakers
6, // 5: envoy.admin.v3.HostStatus.address:type_name -> envoy.config.core.v3.Address
7, // 6: envoy.admin.v3.HostStatus.stats:type_name -> envoy.admin.v3.SimpleMetric
3, // 7: envoy.admin.v3.HostStatus.health_status:type_name -> envoy.admin.v3.HostHealthStatus
4, // 8: envoy.admin.v3.HostStatus.success_rate:type_name -> envoy.type.v3.Percent
4, // 9: envoy.admin.v3.HostStatus.local_origin_success_rate:type_name -> envoy.type.v3.Percent
8, // 10: envoy.admin.v3.HostStatus.locality:type_name -> envoy.config.core.v3.Locality
9, // 11: envoy.admin.v3.HostHealthStatus.eds_health_status:type_name -> envoy.config.core.v3.HealthStatus
12, // [12:12] is the sub-list for method output_type
12, // [12:12] is the sub-list for method input_type
12, // [12:12] is the sub-list for extension type_name
12, // [12:12] is the sub-list for extension extendee
0, // [0:12] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_clusters_proto_init() }
func file_envoy_admin_v3_clusters_proto_init() {
if File_envoy_admin_v3_clusters_proto != nil {
return
}
file_envoy_admin_v3_metrics_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_clusters_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Clusters); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_clusters_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ClusterStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_clusters_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*HostStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_clusters_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*HostHealthStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_clusters_proto_rawDesc,
NumEnums: 0,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_clusters_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_clusters_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_clusters_proto_msgTypes,
}.Build()
File_envoy_admin_v3_clusters_proto = out.File
file_envoy_admin_v3_clusters_proto_rawDesc = nil
file_envoy_admin_v3_clusters_proto_goTypes = nil
file_envoy_admin_v3_clusters_proto_depIdxs = nil
}

View file

@ -0,0 +1,449 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/clusters.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
_ = v3.HealthStatus(0)
)
// Validate checks the field values on Clusters with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Clusters) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetClusterStatuses() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ClustersValidationError{
field: fmt.Sprintf("ClusterStatuses[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// ClustersValidationError is the validation error returned by
// Clusters.Validate if the designated constraints aren't met.
type ClustersValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ClustersValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ClustersValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ClustersValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ClustersValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ClustersValidationError) ErrorName() string { return "ClustersValidationError" }
// Error satisfies the builtin error interface
func (e ClustersValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sClusters.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ClustersValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ClustersValidationError{}
// Validate checks the field values on ClusterStatus with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *ClusterStatus) Validate() error {
if m == nil {
return nil
}
// no validation rules for Name
// no validation rules for AddedViaApi
if v, ok := interface{}(m.GetSuccessRateEjectionThreshold()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ClusterStatusValidationError{
field: "SuccessRateEjectionThreshold",
reason: "embedded message failed validation",
cause: err,
}
}
}
for idx, item := range m.GetHostStatuses() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ClusterStatusValidationError{
field: fmt.Sprintf("HostStatuses[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
if v, ok := interface{}(m.GetLocalOriginSuccessRateEjectionThreshold()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ClusterStatusValidationError{
field: "LocalOriginSuccessRateEjectionThreshold",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetCircuitBreakers()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ClusterStatusValidationError{
field: "CircuitBreakers",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for ObservabilityName
return nil
}
// ClusterStatusValidationError is the validation error returned by
// ClusterStatus.Validate if the designated constraints aren't met.
type ClusterStatusValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ClusterStatusValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ClusterStatusValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ClusterStatusValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ClusterStatusValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ClusterStatusValidationError) ErrorName() string { return "ClusterStatusValidationError" }
// Error satisfies the builtin error interface
func (e ClusterStatusValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sClusterStatus.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ClusterStatusValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ClusterStatusValidationError{}
// Validate checks the field values on HostStatus with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *HostStatus) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetAddress()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return HostStatusValidationError{
field: "Address",
reason: "embedded message failed validation",
cause: err,
}
}
}
for idx, item := range m.GetStats() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return HostStatusValidationError{
field: fmt.Sprintf("Stats[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
if v, ok := interface{}(m.GetHealthStatus()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return HostStatusValidationError{
field: "HealthStatus",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetSuccessRate()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return HostStatusValidationError{
field: "SuccessRate",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for Weight
// no validation rules for Hostname
// no validation rules for Priority
if v, ok := interface{}(m.GetLocalOriginSuccessRate()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return HostStatusValidationError{
field: "LocalOriginSuccessRate",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetLocality()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return HostStatusValidationError{
field: "Locality",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// HostStatusValidationError is the validation error returned by
// HostStatus.Validate if the designated constraints aren't met.
type HostStatusValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e HostStatusValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e HostStatusValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e HostStatusValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e HostStatusValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e HostStatusValidationError) ErrorName() string { return "HostStatusValidationError" }
// Error satisfies the builtin error interface
func (e HostStatusValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sHostStatus.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = HostStatusValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = HostStatusValidationError{}
// Validate checks the field values on HostHealthStatus with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *HostHealthStatus) Validate() error {
if m == nil {
return nil
}
// no validation rules for FailedActiveHealthCheck
// no validation rules for FailedOutlierCheck
// no validation rules for FailedActiveDegradedCheck
// no validation rules for PendingDynamicRemoval
// no validation rules for PendingActiveHc
// no validation rules for ExcludedViaImmediateHcFail
// no validation rules for ActiveHcTimeout
// no validation rules for EdsHealthStatus
return nil
}
// HostHealthStatusValidationError is the validation error returned by
// HostHealthStatus.Validate if the designated constraints aren't met.
type HostHealthStatusValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e HostHealthStatusValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e HostHealthStatusValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e HostHealthStatusValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e HostHealthStatusValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e HostHealthStatusValidationError) ErrorName() string { return "HostHealthStatusValidationError" }
// Error satisfies the builtin error interface
func (e HostHealthStatusValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sHostHealthStatus.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = HostHealthStatusValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = HostHealthStatusValidationError{}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,243 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/init_dump.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Dumps of unready targets of envoy init managers. Envoy's admin fills this message with init managers,
// which provides the information of their unready targets.
// The :ref:`/init_dump <operations_admin_interface_init_dump>` will dump all unready targets information.
type UnreadyTargetsDumps struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// You can choose specific component to dump unready targets with mask query parameter.
// See :ref:`/init_dump?mask={} <operations_admin_interface_init_dump_by_mask>` for more information.
// The dumps of unready targets of all init managers.
UnreadyTargetsDumps []*UnreadyTargetsDumps_UnreadyTargetsDump `protobuf:"bytes,1,rep,name=unready_targets_dumps,json=unreadyTargetsDumps,proto3" json:"unready_targets_dumps,omitempty"`
}
func (x *UnreadyTargetsDumps) Reset() {
*x = UnreadyTargetsDumps{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_init_dump_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UnreadyTargetsDumps) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UnreadyTargetsDumps) ProtoMessage() {}
func (x *UnreadyTargetsDumps) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_init_dump_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UnreadyTargetsDumps.ProtoReflect.Descriptor instead.
func (*UnreadyTargetsDumps) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_init_dump_proto_rawDescGZIP(), []int{0}
}
func (x *UnreadyTargetsDumps) GetUnreadyTargetsDumps() []*UnreadyTargetsDumps_UnreadyTargetsDump {
if x != nil {
return x.UnreadyTargetsDumps
}
return nil
}
// Message of unready targets information of an init manager.
type UnreadyTargetsDumps_UnreadyTargetsDump struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the init manager. Example: "init_manager_xxx".
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Names of unready targets of the init manager. Example: "target_xxx".
TargetNames []string `protobuf:"bytes,2,rep,name=target_names,json=targetNames,proto3" json:"target_names,omitempty"`
}
func (x *UnreadyTargetsDumps_UnreadyTargetsDump) Reset() {
*x = UnreadyTargetsDumps_UnreadyTargetsDump{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_init_dump_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UnreadyTargetsDumps_UnreadyTargetsDump) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UnreadyTargetsDumps_UnreadyTargetsDump) ProtoMessage() {}
func (x *UnreadyTargetsDumps_UnreadyTargetsDump) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_init_dump_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UnreadyTargetsDumps_UnreadyTargetsDump.ProtoReflect.Descriptor instead.
func (*UnreadyTargetsDumps_UnreadyTargetsDump) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_init_dump_proto_rawDescGZIP(), []int{0, 0}
}
func (x *UnreadyTargetsDumps_UnreadyTargetsDump) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *UnreadyTargetsDumps_UnreadyTargetsDump) GetTargetNames() []string {
if x != nil {
return x.TargetNames
}
return nil
}
var File_envoy_admin_v3_init_dump_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_init_dump_proto_rawDesc = []byte{
0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x64, 0x75, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x0e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33,
0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0xce, 0x01, 0x0a, 0x13, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x73, 0x44, 0x75, 0x6d, 0x70, 0x73, 0x12, 0x6a, 0x0a, 0x15, 0x75, 0x6e, 0x72, 0x65, 0x61,
0x64, 0x79, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x5f, 0x64, 0x75, 0x6d, 0x70, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x79, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x44, 0x75, 0x6d, 0x70, 0x73, 0x2e, 0x55, 0x6e, 0x72, 0x65,
0x61, 0x64, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x13,
0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x44, 0x75,
0x6d, 0x70, 0x73, 0x1a, 0x4b, 0x0a, 0x12, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x79, 0x54, 0x61,
0x72, 0x67, 0x65, 0x74, 0x73, 0x44, 0x75, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a,
0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20,
0x03, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73,
0x42, 0x37, 0x0a, 0x1c, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78,
0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33,
0x42, 0x0d, 0x49, 0x6e, 0x69, 0x74, 0x44, 0x75, 0x6d, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
file_envoy_admin_v3_init_dump_proto_rawDescOnce sync.Once
file_envoy_admin_v3_init_dump_proto_rawDescData = file_envoy_admin_v3_init_dump_proto_rawDesc
)
func file_envoy_admin_v3_init_dump_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_init_dump_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_init_dump_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_init_dump_proto_rawDescData)
})
return file_envoy_admin_v3_init_dump_proto_rawDescData
}
var file_envoy_admin_v3_init_dump_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_envoy_admin_v3_init_dump_proto_goTypes = []interface{}{
(*UnreadyTargetsDumps)(nil), // 0: envoy.admin.v3.UnreadyTargetsDumps
(*UnreadyTargetsDumps_UnreadyTargetsDump)(nil), // 1: envoy.admin.v3.UnreadyTargetsDumps.UnreadyTargetsDump
}
var file_envoy_admin_v3_init_dump_proto_depIdxs = []int32{
1, // 0: envoy.admin.v3.UnreadyTargetsDumps.unready_targets_dumps:type_name -> envoy.admin.v3.UnreadyTargetsDumps.UnreadyTargetsDump
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_init_dump_proto_init() }
func file_envoy_admin_v3_init_dump_proto_init() {
if File_envoy_admin_v3_init_dump_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_init_dump_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UnreadyTargetsDumps); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_init_dump_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UnreadyTargetsDumps_UnreadyTargetsDump); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_init_dump_proto_rawDesc,
NumEnums: 0,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_init_dump_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_init_dump_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_init_dump_proto_msgTypes,
}.Build()
File_envoy_admin_v3_init_dump_proto = out.File
file_envoy_admin_v3_init_dump_proto_rawDesc = nil
file_envoy_admin_v3_init_dump_proto_goTypes = nil
file_envoy_admin_v3_init_dump_proto_depIdxs = nil
}

View file

@ -0,0 +1,186 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/init_dump.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on UnreadyTargetsDumps with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *UnreadyTargetsDumps) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetUnreadyTargetsDumps() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return UnreadyTargetsDumpsValidationError{
field: fmt.Sprintf("UnreadyTargetsDumps[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// UnreadyTargetsDumpsValidationError is the validation error returned by
// UnreadyTargetsDumps.Validate if the designated constraints aren't met.
type UnreadyTargetsDumpsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e UnreadyTargetsDumpsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e UnreadyTargetsDumpsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e UnreadyTargetsDumpsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e UnreadyTargetsDumpsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e UnreadyTargetsDumpsValidationError) ErrorName() string {
return "UnreadyTargetsDumpsValidationError"
}
// Error satisfies the builtin error interface
func (e UnreadyTargetsDumpsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sUnreadyTargetsDumps.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = UnreadyTargetsDumpsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = UnreadyTargetsDumpsValidationError{}
// Validate checks the field values on UnreadyTargetsDumps_UnreadyTargetsDump
// with the rules defined in the proto definition for this message. If any
// rules are violated, an error is returned.
func (m *UnreadyTargetsDumps_UnreadyTargetsDump) Validate() error {
if m == nil {
return nil
}
// no validation rules for Name
return nil
}
// UnreadyTargetsDumps_UnreadyTargetsDumpValidationError is the validation
// error returned by UnreadyTargetsDumps_UnreadyTargetsDump.Validate if the
// designated constraints aren't met.
type UnreadyTargetsDumps_UnreadyTargetsDumpValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e UnreadyTargetsDumps_UnreadyTargetsDumpValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e UnreadyTargetsDumps_UnreadyTargetsDumpValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e UnreadyTargetsDumps_UnreadyTargetsDumpValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e UnreadyTargetsDumps_UnreadyTargetsDumpValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e UnreadyTargetsDumps_UnreadyTargetsDumpValidationError) ErrorName() string {
return "UnreadyTargetsDumps_UnreadyTargetsDumpValidationError"
}
// Error satisfies the builtin error interface
func (e UnreadyTargetsDumps_UnreadyTargetsDumpValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sUnreadyTargetsDumps_UnreadyTargetsDump.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = UnreadyTargetsDumps_UnreadyTargetsDumpValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = UnreadyTargetsDumps_UnreadyTargetsDumpValidationError{}

View file

@ -0,0 +1,252 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/listeners.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Admin endpoint uses this wrapper for `/listeners` to display listener status information.
// See :ref:`/listeners <operations_admin_interface_listeners>` for more information.
type Listeners struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// List of listener statuses.
ListenerStatuses []*ListenerStatus `protobuf:"bytes,1,rep,name=listener_statuses,json=listenerStatuses,proto3" json:"listener_statuses,omitempty"`
}
func (x *Listeners) Reset() {
*x = Listeners{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_listeners_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Listeners) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Listeners) ProtoMessage() {}
func (x *Listeners) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_listeners_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Listeners.ProtoReflect.Descriptor instead.
func (*Listeners) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_listeners_proto_rawDescGZIP(), []int{0}
}
func (x *Listeners) GetListenerStatuses() []*ListenerStatus {
if x != nil {
return x.ListenerStatuses
}
return nil
}
// Details an individual listener's current status.
type ListenerStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the listener
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The actual local address that the listener is listening on. If a listener was configured
// to listen on port 0, then this address has the port that was allocated by the OS.
LocalAddress *v3.Address `protobuf:"bytes,2,opt,name=local_address,json=localAddress,proto3" json:"local_address,omitempty"`
}
func (x *ListenerStatus) Reset() {
*x = ListenerStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_listeners_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListenerStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListenerStatus) ProtoMessage() {}
func (x *ListenerStatus) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_listeners_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListenerStatus.ProtoReflect.Descriptor instead.
func (*ListenerStatus) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_listeners_proto_rawDescGZIP(), []int{1}
}
func (x *ListenerStatus) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ListenerStatus) GetLocalAddress() *v3.Address {
if x != nil {
return x.LocalAddress
}
return nil
}
var File_envoy_admin_v3_listeners_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_listeners_proto_rawDesc = []byte{
0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x0e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33,
0x1a, 0x22, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x7e, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e,
0x65, 0x72, 0x73, 0x12, 0x4b, 0x0a, 0x11, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x5f,
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e,
0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e,
0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x10,
0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73,
0x3a, 0x24, 0x9a, 0xc5, 0x88, 0x1e, 0x1f, 0x0a, 0x1d, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4c, 0x69, 0x73,
0x74, 0x65, 0x6e, 0x65, 0x72, 0x73, 0x22, 0x93, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a,
0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x64, 0x64, 0x72,
0x65, 0x73, 0x73, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x3a, 0x29, 0x9a, 0xc5, 0x88, 0x1e, 0x24, 0x0a, 0x22, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4c, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x38, 0x0a, 0x1c,
0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0e, 0x4c, 0x69,
0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80,
0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_listeners_proto_rawDescOnce sync.Once
file_envoy_admin_v3_listeners_proto_rawDescData = file_envoy_admin_v3_listeners_proto_rawDesc
)
func file_envoy_admin_v3_listeners_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_listeners_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_listeners_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_listeners_proto_rawDescData)
})
return file_envoy_admin_v3_listeners_proto_rawDescData
}
var file_envoy_admin_v3_listeners_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_envoy_admin_v3_listeners_proto_goTypes = []interface{}{
(*Listeners)(nil), // 0: envoy.admin.v3.Listeners
(*ListenerStatus)(nil), // 1: envoy.admin.v3.ListenerStatus
(*v3.Address)(nil), // 2: envoy.config.core.v3.Address
}
var file_envoy_admin_v3_listeners_proto_depIdxs = []int32{
1, // 0: envoy.admin.v3.Listeners.listener_statuses:type_name -> envoy.admin.v3.ListenerStatus
2, // 1: envoy.admin.v3.ListenerStatus.local_address:type_name -> envoy.config.core.v3.Address
2, // [2:2] is the sub-list for method output_type
2, // [2:2] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_listeners_proto_init() }
func file_envoy_admin_v3_listeners_proto_init() {
if File_envoy_admin_v3_listeners_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_listeners_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Listeners); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_listeners_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListenerStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_listeners_proto_rawDesc,
NumEnums: 0,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_listeners_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_listeners_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_listeners_proto_msgTypes,
}.Build()
File_envoy_admin_v3_listeners_proto = out.File
file_envoy_admin_v3_listeners_proto_rawDesc = nil
file_envoy_admin_v3_listeners_proto_goTypes = nil
file_envoy_admin_v3_listeners_proto_depIdxs = nil
}

View file

@ -0,0 +1,190 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/listeners.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on Listeners with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Listeners) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetListenerStatuses() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ListenersValidationError{
field: fmt.Sprintf("ListenerStatuses[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// ListenersValidationError is the validation error returned by
// Listeners.Validate if the designated constraints aren't met.
type ListenersValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ListenersValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ListenersValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ListenersValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ListenersValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ListenersValidationError) ErrorName() string { return "ListenersValidationError" }
// Error satisfies the builtin error interface
func (e ListenersValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sListeners.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ListenersValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ListenersValidationError{}
// Validate checks the field values on ListenerStatus with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *ListenerStatus) Validate() error {
if m == nil {
return nil
}
// no validation rules for Name
if v, ok := interface{}(m.GetLocalAddress()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ListenerStatusValidationError{
field: "LocalAddress",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// ListenerStatusValidationError is the validation error returned by
// ListenerStatus.Validate if the designated constraints aren't met.
type ListenerStatusValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ListenerStatusValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ListenerStatusValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ListenerStatusValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ListenerStatusValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ListenerStatusValidationError) ErrorName() string { return "ListenerStatusValidationError" }
// Error satisfies the builtin error interface
func (e ListenerStatusValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sListenerStatus.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ListenerStatusValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ListenerStatusValidationError{}

View file

@ -0,0 +1,229 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/memory.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Proto representation of the internal memory consumption of an Envoy instance. These represent
// values extracted from an internal TCMalloc instance. For more information, see the section of the
// docs entitled ["Generic Tcmalloc Status"](https://gperftools.github.io/gperftools/tcmalloc.html).
// [#next-free-field: 7]
type Memory struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The number of bytes allocated by the heap for Envoy. This is an alias for
// `generic.current_allocated_bytes`.
Allocated uint64 `protobuf:"varint,1,opt,name=allocated,proto3" json:"allocated,omitempty"`
// The number of bytes reserved by the heap but not necessarily allocated. This is an alias for
// `generic.heap_size`.
HeapSize uint64 `protobuf:"varint,2,opt,name=heap_size,json=heapSize,proto3" json:"heap_size,omitempty"`
// The number of bytes in free, unmapped pages in the page heap. These bytes always count towards
// virtual memory usage, and depending on the OS, typically do not count towards physical memory
// usage. This is an alias for `tcmalloc.pageheap_unmapped_bytes`.
PageheapUnmapped uint64 `protobuf:"varint,3,opt,name=pageheap_unmapped,json=pageheapUnmapped,proto3" json:"pageheap_unmapped,omitempty"`
// The number of bytes in free, mapped pages in the page heap. These bytes always count towards
// virtual memory usage, and unless the underlying memory is swapped out by the OS, they also
// count towards physical memory usage. This is an alias for `tcmalloc.pageheap_free_bytes`.
PageheapFree uint64 `protobuf:"varint,4,opt,name=pageheap_free,json=pageheapFree,proto3" json:"pageheap_free,omitempty"`
// The amount of memory used by the TCMalloc thread caches (for small objects). This is an alias
// for `tcmalloc.current_total_thread_cache_bytes`.
TotalThreadCache uint64 `protobuf:"varint,5,opt,name=total_thread_cache,json=totalThreadCache,proto3" json:"total_thread_cache,omitempty"`
// The number of bytes of the physical memory usage by the allocator. This is an alias for
// `generic.total_physical_bytes`.
TotalPhysicalBytes uint64 `protobuf:"varint,6,opt,name=total_physical_bytes,json=totalPhysicalBytes,proto3" json:"total_physical_bytes,omitempty"`
}
func (x *Memory) Reset() {
*x = Memory{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_memory_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Memory) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Memory) ProtoMessage() {}
func (x *Memory) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_memory_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Memory.ProtoReflect.Descriptor instead.
func (*Memory) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_memory_proto_rawDescGZIP(), []int{0}
}
func (x *Memory) GetAllocated() uint64 {
if x != nil {
return x.Allocated
}
return 0
}
func (x *Memory) GetHeapSize() uint64 {
if x != nil {
return x.HeapSize
}
return 0
}
func (x *Memory) GetPageheapUnmapped() uint64 {
if x != nil {
return x.PageheapUnmapped
}
return 0
}
func (x *Memory) GetPageheapFree() uint64 {
if x != nil {
return x.PageheapFree
}
return 0
}
func (x *Memory) GetTotalThreadCache() uint64 {
if x != nil {
return x.TotalThreadCache
}
return 0
}
func (x *Memory) GetTotalPhysicalBytes() uint64 {
if x != nil {
return x.TotalPhysicalBytes
}
return 0
}
var File_envoy_admin_v3_memory_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_memory_proto_rawDesc = []byte{
0x0a, 0x1b, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x1a, 0x1d, 0x75,
0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64,
0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0x98, 0x02, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6c,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61,
0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x61, 0x70,
0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x68, 0x65, 0x61,
0x70, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x61, 0x67, 0x65, 0x68, 0x65, 0x61,
0x70, 0x5f, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
0x52, 0x10, 0x70, 0x61, 0x67, 0x65, 0x68, 0x65, 0x61, 0x70, 0x55, 0x6e, 0x6d, 0x61, 0x70, 0x70,
0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x67, 0x65, 0x68, 0x65, 0x61, 0x70, 0x5f, 0x66,
0x72, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x67, 0x65, 0x68,
0x65, 0x61, 0x70, 0x46, 0x72, 0x65, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c,
0x5f, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x18, 0x05, 0x20,
0x01, 0x28, 0x04, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64,
0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70,
0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20,
0x01, 0x28, 0x04, 0x52, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63,
0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x3a, 0x21, 0x9a, 0xc5, 0x88, 0x1e, 0x1c, 0x0a, 0x1a,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x35, 0x0a, 0x1c, 0x69, 0x6f,
0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0b, 0x4d, 0x65, 0x6d, 0x6f,
0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10,
0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_memory_proto_rawDescOnce sync.Once
file_envoy_admin_v3_memory_proto_rawDescData = file_envoy_admin_v3_memory_proto_rawDesc
)
func file_envoy_admin_v3_memory_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_memory_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_memory_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_memory_proto_rawDescData)
})
return file_envoy_admin_v3_memory_proto_rawDescData
}
var file_envoy_admin_v3_memory_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_admin_v3_memory_proto_goTypes = []interface{}{
(*Memory)(nil), // 0: envoy.admin.v3.Memory
}
var file_envoy_admin_v3_memory_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_memory_proto_init() }
func file_envoy_admin_v3_memory_proto_init() {
if File_envoy_admin_v3_memory_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_memory_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Memory); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_memory_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_memory_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_memory_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_memory_proto_msgTypes,
}.Build()
File_envoy_admin_v3_memory_proto = out.File
file_envoy_admin_v3_memory_proto_rawDesc = nil
file_envoy_admin_v3_memory_proto_goTypes = nil
file_envoy_admin_v3_memory_proto_depIdxs = nil
}

View file

@ -0,0 +1,110 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/memory.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on Memory with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Memory) Validate() error {
if m == nil {
return nil
}
// no validation rules for Allocated
// no validation rules for HeapSize
// no validation rules for PageheapUnmapped
// no validation rules for PageheapFree
// no validation rules for TotalThreadCache
// no validation rules for TotalPhysicalBytes
return nil
}
// MemoryValidationError is the validation error returned by Memory.Validate if
// the designated constraints aren't met.
type MemoryValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e MemoryValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e MemoryValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e MemoryValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e MemoryValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e MemoryValidationError) ErrorName() string { return "MemoryValidationError" }
// Error satisfies the builtin error interface
func (e MemoryValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sMemory.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = MemoryValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = MemoryValidationError{}

View file

@ -0,0 +1,235 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/metrics.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type SimpleMetric_Type int32
const (
SimpleMetric_COUNTER SimpleMetric_Type = 0
SimpleMetric_GAUGE SimpleMetric_Type = 1
)
// Enum value maps for SimpleMetric_Type.
var (
SimpleMetric_Type_name = map[int32]string{
0: "COUNTER",
1: "GAUGE",
}
SimpleMetric_Type_value = map[string]int32{
"COUNTER": 0,
"GAUGE": 1,
}
)
func (x SimpleMetric_Type) Enum() *SimpleMetric_Type {
p := new(SimpleMetric_Type)
*p = x
return p
}
func (x SimpleMetric_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (SimpleMetric_Type) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_admin_v3_metrics_proto_enumTypes[0].Descriptor()
}
func (SimpleMetric_Type) Type() protoreflect.EnumType {
return &file_envoy_admin_v3_metrics_proto_enumTypes[0]
}
func (x SimpleMetric_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use SimpleMetric_Type.Descriptor instead.
func (SimpleMetric_Type) EnumDescriptor() ([]byte, []int) {
return file_envoy_admin_v3_metrics_proto_rawDescGZIP(), []int{0, 0}
}
// Proto representation of an Envoy Counter or Gauge value.
type SimpleMetric struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Type of the metric represented.
Type SimpleMetric_Type `protobuf:"varint,1,opt,name=type,proto3,enum=envoy.admin.v3.SimpleMetric_Type" json:"type,omitempty"`
// Current metric value.
Value uint64 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
// Name of the metric.
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *SimpleMetric) Reset() {
*x = SimpleMetric{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_metrics_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SimpleMetric) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SimpleMetric) ProtoMessage() {}
func (x *SimpleMetric) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_metrics_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SimpleMetric.ProtoReflect.Descriptor instead.
func (*SimpleMetric) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_metrics_proto_rawDescGZIP(), []int{0}
}
func (x *SimpleMetric) GetType() SimpleMetric_Type {
if x != nil {
return x.Type
}
return SimpleMetric_COUNTER
}
func (x *SimpleMetric) GetValue() uint64 {
if x != nil {
return x.Value
}
return 0
}
func (x *SimpleMetric) GetName() string {
if x != nil {
return x.Name
}
return ""
}
var File_envoy_admin_v3_metrics_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_metrics_proto_rawDesc = []byte{
0x0a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x1a, 0x1d,
0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75,
0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x22, 0xb8, 0x01, 0x0a, 0x0c, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69,
0x63, 0x12, 0x35, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x21, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33,
0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x2e, 0x54, 0x79,
0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12,
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x22, 0x1e, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f,
0x55, 0x4e, 0x54, 0x45, 0x52, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x41, 0x55, 0x47, 0x45,
0x10, 0x01, 0x3a, 0x27, 0x9a, 0xc5, 0x88, 0x1e, 0x22, 0x0a, 0x20, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53,
0x69, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x42, 0x36, 0x0a, 0x1c, 0x69,
0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0c, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06,
0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_metrics_proto_rawDescOnce sync.Once
file_envoy_admin_v3_metrics_proto_rawDescData = file_envoy_admin_v3_metrics_proto_rawDesc
)
func file_envoy_admin_v3_metrics_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_metrics_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_metrics_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_metrics_proto_rawDescData)
})
return file_envoy_admin_v3_metrics_proto_rawDescData
}
var file_envoy_admin_v3_metrics_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_envoy_admin_v3_metrics_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_admin_v3_metrics_proto_goTypes = []interface{}{
(SimpleMetric_Type)(0), // 0: envoy.admin.v3.SimpleMetric.Type
(*SimpleMetric)(nil), // 1: envoy.admin.v3.SimpleMetric
}
var file_envoy_admin_v3_metrics_proto_depIdxs = []int32{
0, // 0: envoy.admin.v3.SimpleMetric.type:type_name -> envoy.admin.v3.SimpleMetric.Type
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_metrics_proto_init() }
func file_envoy_admin_v3_metrics_proto_init() {
if File_envoy_admin_v3_metrics_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_metrics_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SimpleMetric); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_metrics_proto_rawDesc,
NumEnums: 1,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_metrics_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_metrics_proto_depIdxs,
EnumInfos: file_envoy_admin_v3_metrics_proto_enumTypes,
MessageInfos: file_envoy_admin_v3_metrics_proto_msgTypes,
}.Build()
File_envoy_admin_v3_metrics_proto = out.File
file_envoy_admin_v3_metrics_proto_rawDesc = nil
file_envoy_admin_v3_metrics_proto_goTypes = nil
file_envoy_admin_v3_metrics_proto_depIdxs = nil
}

View file

@ -0,0 +1,105 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/metrics.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on SimpleMetric with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *SimpleMetric) Validate() error {
if m == nil {
return nil
}
// no validation rules for Type
// no validation rules for Value
// no validation rules for Name
return nil
}
// SimpleMetricValidationError is the validation error returned by
// SimpleMetric.Validate if the designated constraints aren't met.
type SimpleMetricValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e SimpleMetricValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e SimpleMetricValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e SimpleMetricValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e SimpleMetricValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e SimpleMetricValidationError) ErrorName() string { return "SimpleMetricValidationError" }
// Error satisfies the builtin error interface
func (e SimpleMetricValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sSimpleMetric.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = SimpleMetricValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = SimpleMetricValidationError{}

View file

@ -0,0 +1,192 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/mutex_stats.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Proto representation of the statistics collected upon absl::Mutex contention, if Envoy is run
// under :option:`--enable-mutex-tracing`. For more information, see the `absl::Mutex`
// [docs](https://abseil.io/about/design/mutex#extra-features).
//
// *NB*: The wait cycles below are measured by `absl::base_internal::CycleClock`, and may not
// correspond to core clock frequency. For more information, see the `CycleClock`
// [docs](https://github.com/abseil/abseil-cpp/blob/master/absl/base/internal/cycleclock.h).
type MutexStats struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The number of individual mutex contentions which have occurred since startup.
NumContentions uint64 `protobuf:"varint,1,opt,name=num_contentions,json=numContentions,proto3" json:"num_contentions,omitempty"`
// The length of the current contention wait cycle.
CurrentWaitCycles uint64 `protobuf:"varint,2,opt,name=current_wait_cycles,json=currentWaitCycles,proto3" json:"current_wait_cycles,omitempty"`
// The lifetime total of all contention wait cycles.
LifetimeWaitCycles uint64 `protobuf:"varint,3,opt,name=lifetime_wait_cycles,json=lifetimeWaitCycles,proto3" json:"lifetime_wait_cycles,omitempty"`
}
func (x *MutexStats) Reset() {
*x = MutexStats{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_mutex_stats_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MutexStats) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MutexStats) ProtoMessage() {}
func (x *MutexStats) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_mutex_stats_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MutexStats.ProtoReflect.Descriptor instead.
func (*MutexStats) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_mutex_stats_proto_rawDescGZIP(), []int{0}
}
func (x *MutexStats) GetNumContentions() uint64 {
if x != nil {
return x.NumContentions
}
return 0
}
func (x *MutexStats) GetCurrentWaitCycles() uint64 {
if x != nil {
return x.CurrentWaitCycles
}
return 0
}
func (x *MutexStats) GetLifetimeWaitCycles() uint64 {
if x != nil {
return x.LifetimeWaitCycles
}
return 0
}
var File_envoy_admin_v3_mutex_stats_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_mutex_stats_proto_rawDesc = []byte{
0x0a, 0x20, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x6d, 0x75, 0x74, 0x65, 0x78, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x0e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e,
0x76, 0x33, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbe, 0x01, 0x0a, 0x0a, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x53, 0x74,
0x61, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6e, 0x75,
0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x13,
0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x63, 0x79, 0x63,
0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65,
0x6e, 0x74, 0x57, 0x61, 0x69, 0x74, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14,
0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x63, 0x79,
0x63, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x6c, 0x69, 0x66, 0x65,
0x74, 0x69, 0x6d, 0x65, 0x57, 0x61, 0x69, 0x74, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x25,
0x9a, 0xc5, 0x88, 0x1e, 0x20, 0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d,
0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x75, 0x74, 0x65, 0x78,
0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x39, 0x0a, 0x1c, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d,
0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0f, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x53, 0x74, 0x61, 0x74,
0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_mutex_stats_proto_rawDescOnce sync.Once
file_envoy_admin_v3_mutex_stats_proto_rawDescData = file_envoy_admin_v3_mutex_stats_proto_rawDesc
)
func file_envoy_admin_v3_mutex_stats_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_mutex_stats_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_mutex_stats_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_mutex_stats_proto_rawDescData)
})
return file_envoy_admin_v3_mutex_stats_proto_rawDescData
}
var file_envoy_admin_v3_mutex_stats_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_admin_v3_mutex_stats_proto_goTypes = []interface{}{
(*MutexStats)(nil), // 0: envoy.admin.v3.MutexStats
}
var file_envoy_admin_v3_mutex_stats_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_mutex_stats_proto_init() }
func file_envoy_admin_v3_mutex_stats_proto_init() {
if File_envoy_admin_v3_mutex_stats_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_mutex_stats_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MutexStats); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_mutex_stats_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_mutex_stats_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_mutex_stats_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_mutex_stats_proto_msgTypes,
}.Build()
File_envoy_admin_v3_mutex_stats_proto = out.File
file_envoy_admin_v3_mutex_stats_proto_rawDesc = nil
file_envoy_admin_v3_mutex_stats_proto_goTypes = nil
file_envoy_admin_v3_mutex_stats_proto_depIdxs = nil
}

View file

@ -0,0 +1,104 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/mutex_stats.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on MutexStats with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *MutexStats) Validate() error {
if m == nil {
return nil
}
// no validation rules for NumContentions
// no validation rules for CurrentWaitCycles
// no validation rules for LifetimeWaitCycles
return nil
}
// MutexStatsValidationError is the validation error returned by
// MutexStats.Validate if the designated constraints aren't met.
type MutexStatsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e MutexStatsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e MutexStatsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e MutexStatsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e MutexStatsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e MutexStatsValidationError) ErrorName() string { return "MutexStatsValidationError" }
// Error satisfies the builtin error interface
func (e MutexStatsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sMutexStats.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = MutexStatsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = MutexStatsValidationError{}

View file

@ -0,0 +1,982 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/server_info.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/go-control-plane/envoy/annotations"
v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
proto "github.com/golang/protobuf/proto"
duration "github.com/golang/protobuf/ptypes/duration"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type ServerInfo_State int32
const (
// Server is live and serving traffic.
ServerInfo_LIVE ServerInfo_State = 0
// Server is draining listeners in response to external health checks failing.
ServerInfo_DRAINING ServerInfo_State = 1
// Server has not yet completed cluster manager initialization.
ServerInfo_PRE_INITIALIZING ServerInfo_State = 2
// Server is running the cluster manager initialization callbacks (e.g., RDS).
ServerInfo_INITIALIZING ServerInfo_State = 3
)
// Enum value maps for ServerInfo_State.
var (
ServerInfo_State_name = map[int32]string{
0: "LIVE",
1: "DRAINING",
2: "PRE_INITIALIZING",
3: "INITIALIZING",
}
ServerInfo_State_value = map[string]int32{
"LIVE": 0,
"DRAINING": 1,
"PRE_INITIALIZING": 2,
"INITIALIZING": 3,
}
)
func (x ServerInfo_State) Enum() *ServerInfo_State {
p := new(ServerInfo_State)
*p = x
return p
}
func (x ServerInfo_State) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (ServerInfo_State) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_admin_v3_server_info_proto_enumTypes[0].Descriptor()
}
func (ServerInfo_State) Type() protoreflect.EnumType {
return &file_envoy_admin_v3_server_info_proto_enumTypes[0]
}
func (x ServerInfo_State) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use ServerInfo_State.Descriptor instead.
func (ServerInfo_State) EnumDescriptor() ([]byte, []int) {
return file_envoy_admin_v3_server_info_proto_rawDescGZIP(), []int{0, 0}
}
type CommandLineOptions_IpVersion int32
const (
CommandLineOptions_v4 CommandLineOptions_IpVersion = 0
CommandLineOptions_v6 CommandLineOptions_IpVersion = 1
)
// Enum value maps for CommandLineOptions_IpVersion.
var (
CommandLineOptions_IpVersion_name = map[int32]string{
0: "v4",
1: "v6",
}
CommandLineOptions_IpVersion_value = map[string]int32{
"v4": 0,
"v6": 1,
}
)
func (x CommandLineOptions_IpVersion) Enum() *CommandLineOptions_IpVersion {
p := new(CommandLineOptions_IpVersion)
*p = x
return p
}
func (x CommandLineOptions_IpVersion) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CommandLineOptions_IpVersion) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_admin_v3_server_info_proto_enumTypes[1].Descriptor()
}
func (CommandLineOptions_IpVersion) Type() protoreflect.EnumType {
return &file_envoy_admin_v3_server_info_proto_enumTypes[1]
}
func (x CommandLineOptions_IpVersion) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CommandLineOptions_IpVersion.Descriptor instead.
func (CommandLineOptions_IpVersion) EnumDescriptor() ([]byte, []int) {
return file_envoy_admin_v3_server_info_proto_rawDescGZIP(), []int{1, 0}
}
type CommandLineOptions_Mode int32
const (
// Validate configs and then serve traffic normally.
CommandLineOptions_Serve CommandLineOptions_Mode = 0
// Validate configs and exit.
CommandLineOptions_Validate CommandLineOptions_Mode = 1
// Completely load and initialize the config, and then exit without running the listener loop.
CommandLineOptions_InitOnly CommandLineOptions_Mode = 2
)
// Enum value maps for CommandLineOptions_Mode.
var (
CommandLineOptions_Mode_name = map[int32]string{
0: "Serve",
1: "Validate",
2: "InitOnly",
}
CommandLineOptions_Mode_value = map[string]int32{
"Serve": 0,
"Validate": 1,
"InitOnly": 2,
}
)
func (x CommandLineOptions_Mode) Enum() *CommandLineOptions_Mode {
p := new(CommandLineOptions_Mode)
*p = x
return p
}
func (x CommandLineOptions_Mode) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CommandLineOptions_Mode) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_admin_v3_server_info_proto_enumTypes[2].Descriptor()
}
func (CommandLineOptions_Mode) Type() protoreflect.EnumType {
return &file_envoy_admin_v3_server_info_proto_enumTypes[2]
}
func (x CommandLineOptions_Mode) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CommandLineOptions_Mode.Descriptor instead.
func (CommandLineOptions_Mode) EnumDescriptor() ([]byte, []int) {
return file_envoy_admin_v3_server_info_proto_rawDescGZIP(), []int{1, 1}
}
type CommandLineOptions_DrainStrategy int32
const (
// Gradually discourage connections over the course of the drain period.
CommandLineOptions_Gradual CommandLineOptions_DrainStrategy = 0
// Discourage all connections for the duration of the drain sequence.
CommandLineOptions_Immediate CommandLineOptions_DrainStrategy = 1
)
// Enum value maps for CommandLineOptions_DrainStrategy.
var (
CommandLineOptions_DrainStrategy_name = map[int32]string{
0: "Gradual",
1: "Immediate",
}
CommandLineOptions_DrainStrategy_value = map[string]int32{
"Gradual": 0,
"Immediate": 1,
}
)
func (x CommandLineOptions_DrainStrategy) Enum() *CommandLineOptions_DrainStrategy {
p := new(CommandLineOptions_DrainStrategy)
*p = x
return p
}
func (x CommandLineOptions_DrainStrategy) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CommandLineOptions_DrainStrategy) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_admin_v3_server_info_proto_enumTypes[3].Descriptor()
}
func (CommandLineOptions_DrainStrategy) Type() protoreflect.EnumType {
return &file_envoy_admin_v3_server_info_proto_enumTypes[3]
}
func (x CommandLineOptions_DrainStrategy) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CommandLineOptions_DrainStrategy.Descriptor instead.
func (CommandLineOptions_DrainStrategy) EnumDescriptor() ([]byte, []int) {
return file_envoy_admin_v3_server_info_proto_rawDescGZIP(), []int{1, 2}
}
// Proto representation of the value returned by /server_info, containing
// server version/server status information.
// [#next-free-field: 8]
type ServerInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Server version.
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
// State of the server.
State ServerInfo_State `protobuf:"varint,2,opt,name=state,proto3,enum=envoy.admin.v3.ServerInfo_State" json:"state,omitempty"`
// Uptime since current epoch was started.
UptimeCurrentEpoch *duration.Duration `protobuf:"bytes,3,opt,name=uptime_current_epoch,json=uptimeCurrentEpoch,proto3" json:"uptime_current_epoch,omitempty"`
// Uptime since the start of the first epoch.
UptimeAllEpochs *duration.Duration `protobuf:"bytes,4,opt,name=uptime_all_epochs,json=uptimeAllEpochs,proto3" json:"uptime_all_epochs,omitempty"`
// Hot restart version.
HotRestartVersion string `protobuf:"bytes,5,opt,name=hot_restart_version,json=hotRestartVersion,proto3" json:"hot_restart_version,omitempty"`
// Command line options the server is currently running with.
CommandLineOptions *CommandLineOptions `protobuf:"bytes,6,opt,name=command_line_options,json=commandLineOptions,proto3" json:"command_line_options,omitempty"`
// Populated node identity of this server.
Node *v3.Node `protobuf:"bytes,7,opt,name=node,proto3" json:"node,omitempty"`
}
func (x *ServerInfo) Reset() {
*x = ServerInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_server_info_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ServerInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ServerInfo) ProtoMessage() {}
func (x *ServerInfo) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_server_info_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ServerInfo.ProtoReflect.Descriptor instead.
func (*ServerInfo) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_server_info_proto_rawDescGZIP(), []int{0}
}
func (x *ServerInfo) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *ServerInfo) GetState() ServerInfo_State {
if x != nil {
return x.State
}
return ServerInfo_LIVE
}
func (x *ServerInfo) GetUptimeCurrentEpoch() *duration.Duration {
if x != nil {
return x.UptimeCurrentEpoch
}
return nil
}
func (x *ServerInfo) GetUptimeAllEpochs() *duration.Duration {
if x != nil {
return x.UptimeAllEpochs
}
return nil
}
func (x *ServerInfo) GetHotRestartVersion() string {
if x != nil {
return x.HotRestartVersion
}
return ""
}
func (x *ServerInfo) GetCommandLineOptions() *CommandLineOptions {
if x != nil {
return x.CommandLineOptions
}
return nil
}
func (x *ServerInfo) GetNode() *v3.Node {
if x != nil {
return x.Node
}
return nil
}
// [#next-free-field: 38]
type CommandLineOptions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// See :option:`--base-id` for details.
BaseId uint64 `protobuf:"varint,1,opt,name=base_id,json=baseId,proto3" json:"base_id,omitempty"`
// See :option:`--use-dynamic-base-id` for details.
UseDynamicBaseId bool `protobuf:"varint,31,opt,name=use_dynamic_base_id,json=useDynamicBaseId,proto3" json:"use_dynamic_base_id,omitempty"`
// See :option:`--base-id-path` for details.
BaseIdPath string `protobuf:"bytes,32,opt,name=base_id_path,json=baseIdPath,proto3" json:"base_id_path,omitempty"`
// See :option:`--concurrency` for details.
Concurrency uint32 `protobuf:"varint,2,opt,name=concurrency,proto3" json:"concurrency,omitempty"`
// See :option:`--config-path` for details.
ConfigPath string `protobuf:"bytes,3,opt,name=config_path,json=configPath,proto3" json:"config_path,omitempty"`
// See :option:`--config-yaml` for details.
ConfigYaml string `protobuf:"bytes,4,opt,name=config_yaml,json=configYaml,proto3" json:"config_yaml,omitempty"`
// See :option:`--allow-unknown-static-fields` for details.
AllowUnknownStaticFields bool `protobuf:"varint,5,opt,name=allow_unknown_static_fields,json=allowUnknownStaticFields,proto3" json:"allow_unknown_static_fields,omitempty"`
// See :option:`--reject-unknown-dynamic-fields` for details.
RejectUnknownDynamicFields bool `protobuf:"varint,26,opt,name=reject_unknown_dynamic_fields,json=rejectUnknownDynamicFields,proto3" json:"reject_unknown_dynamic_fields,omitempty"`
// See :option:`--ignore-unknown-dynamic-fields` for details.
IgnoreUnknownDynamicFields bool `protobuf:"varint,30,opt,name=ignore_unknown_dynamic_fields,json=ignoreUnknownDynamicFields,proto3" json:"ignore_unknown_dynamic_fields,omitempty"`
// See :option:`--admin-address-path` for details.
AdminAddressPath string `protobuf:"bytes,6,opt,name=admin_address_path,json=adminAddressPath,proto3" json:"admin_address_path,omitempty"`
// See :option:`--local-address-ip-version` for details.
LocalAddressIpVersion CommandLineOptions_IpVersion `protobuf:"varint,7,opt,name=local_address_ip_version,json=localAddressIpVersion,proto3,enum=envoy.admin.v3.CommandLineOptions_IpVersion" json:"local_address_ip_version,omitempty"`
// See :option:`--log-level` for details.
LogLevel string `protobuf:"bytes,8,opt,name=log_level,json=logLevel,proto3" json:"log_level,omitempty"`
// See :option:`--component-log-level` for details.
ComponentLogLevel string `protobuf:"bytes,9,opt,name=component_log_level,json=componentLogLevel,proto3" json:"component_log_level,omitempty"`
// See :option:`--log-format` for details.
LogFormat string `protobuf:"bytes,10,opt,name=log_format,json=logFormat,proto3" json:"log_format,omitempty"`
// See :option:`--log-format-escaped` for details.
LogFormatEscaped bool `protobuf:"varint,27,opt,name=log_format_escaped,json=logFormatEscaped,proto3" json:"log_format_escaped,omitempty"`
// See :option:`--log-path` for details.
LogPath string `protobuf:"bytes,11,opt,name=log_path,json=logPath,proto3" json:"log_path,omitempty"`
// See :option:`--service-cluster` for details.
ServiceCluster string `protobuf:"bytes,13,opt,name=service_cluster,json=serviceCluster,proto3" json:"service_cluster,omitempty"`
// See :option:`--service-node` for details.
ServiceNode string `protobuf:"bytes,14,opt,name=service_node,json=serviceNode,proto3" json:"service_node,omitempty"`
// See :option:`--service-zone` for details.
ServiceZone string `protobuf:"bytes,15,opt,name=service_zone,json=serviceZone,proto3" json:"service_zone,omitempty"`
// See :option:`--file-flush-interval-msec` for details.
FileFlushInterval *duration.Duration `protobuf:"bytes,16,opt,name=file_flush_interval,json=fileFlushInterval,proto3" json:"file_flush_interval,omitempty"`
// See :option:`--drain-time-s` for details.
DrainTime *duration.Duration `protobuf:"bytes,17,opt,name=drain_time,json=drainTime,proto3" json:"drain_time,omitempty"`
// See :option:`--drain-strategy` for details.
DrainStrategy CommandLineOptions_DrainStrategy `protobuf:"varint,33,opt,name=drain_strategy,json=drainStrategy,proto3,enum=envoy.admin.v3.CommandLineOptions_DrainStrategy" json:"drain_strategy,omitempty"`
// See :option:`--parent-shutdown-time-s` for details.
ParentShutdownTime *duration.Duration `protobuf:"bytes,18,opt,name=parent_shutdown_time,json=parentShutdownTime,proto3" json:"parent_shutdown_time,omitempty"`
// See :option:`--mode` for details.
Mode CommandLineOptions_Mode `protobuf:"varint,19,opt,name=mode,proto3,enum=envoy.admin.v3.CommandLineOptions_Mode" json:"mode,omitempty"`
// See :option:`--disable-hot-restart` for details.
DisableHotRestart bool `protobuf:"varint,22,opt,name=disable_hot_restart,json=disableHotRestart,proto3" json:"disable_hot_restart,omitempty"`
// See :option:`--enable-mutex-tracing` for details.
EnableMutexTracing bool `protobuf:"varint,23,opt,name=enable_mutex_tracing,json=enableMutexTracing,proto3" json:"enable_mutex_tracing,omitempty"`
// See :option:`--restart-epoch` for details.
RestartEpoch uint32 `protobuf:"varint,24,opt,name=restart_epoch,json=restartEpoch,proto3" json:"restart_epoch,omitempty"`
// See :option:`--cpuset-threads` for details.
CpusetThreads bool `protobuf:"varint,25,opt,name=cpuset_threads,json=cpusetThreads,proto3" json:"cpuset_threads,omitempty"`
// See :option:`--disable-extensions` for details.
DisabledExtensions []string `protobuf:"bytes,28,rep,name=disabled_extensions,json=disabledExtensions,proto3" json:"disabled_extensions,omitempty"`
// See :option:`--bootstrap-version` for details.
BootstrapVersion uint32 `protobuf:"varint,29,opt,name=bootstrap_version,json=bootstrapVersion,proto3" json:"bootstrap_version,omitempty"`
// See :option:`--enable-fine-grain-logging` for details.
EnableFineGrainLogging bool `protobuf:"varint,34,opt,name=enable_fine_grain_logging,json=enableFineGrainLogging,proto3" json:"enable_fine_grain_logging,omitempty"`
// See :option:`--socket-path` for details.
SocketPath string `protobuf:"bytes,35,opt,name=socket_path,json=socketPath,proto3" json:"socket_path,omitempty"`
// See :option:`--socket-mode` for details.
SocketMode uint32 `protobuf:"varint,36,opt,name=socket_mode,json=socketMode,proto3" json:"socket_mode,omitempty"`
// See :option:`--enable-core-dump` for details.
EnableCoreDump bool `protobuf:"varint,37,opt,name=enable_core_dump,json=enableCoreDump,proto3" json:"enable_core_dump,omitempty"`
// Deprecated: Do not use.
HiddenEnvoyDeprecatedMaxStats uint64 `protobuf:"varint,20,opt,name=hidden_envoy_deprecated_max_stats,json=hiddenEnvoyDeprecatedMaxStats,proto3" json:"hidden_envoy_deprecated_max_stats,omitempty"`
// Deprecated: Do not use.
HiddenEnvoyDeprecatedMaxObjNameLen uint64 `protobuf:"varint,21,opt,name=hidden_envoy_deprecated_max_obj_name_len,json=hiddenEnvoyDeprecatedMaxObjNameLen,proto3" json:"hidden_envoy_deprecated_max_obj_name_len,omitempty"`
}
func (x *CommandLineOptions) Reset() {
*x = CommandLineOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_server_info_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CommandLineOptions) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CommandLineOptions) ProtoMessage() {}
func (x *CommandLineOptions) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_server_info_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CommandLineOptions.ProtoReflect.Descriptor instead.
func (*CommandLineOptions) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_server_info_proto_rawDescGZIP(), []int{1}
}
func (x *CommandLineOptions) GetBaseId() uint64 {
if x != nil {
return x.BaseId
}
return 0
}
func (x *CommandLineOptions) GetUseDynamicBaseId() bool {
if x != nil {
return x.UseDynamicBaseId
}
return false
}
func (x *CommandLineOptions) GetBaseIdPath() string {
if x != nil {
return x.BaseIdPath
}
return ""
}
func (x *CommandLineOptions) GetConcurrency() uint32 {
if x != nil {
return x.Concurrency
}
return 0
}
func (x *CommandLineOptions) GetConfigPath() string {
if x != nil {
return x.ConfigPath
}
return ""
}
func (x *CommandLineOptions) GetConfigYaml() string {
if x != nil {
return x.ConfigYaml
}
return ""
}
func (x *CommandLineOptions) GetAllowUnknownStaticFields() bool {
if x != nil {
return x.AllowUnknownStaticFields
}
return false
}
func (x *CommandLineOptions) GetRejectUnknownDynamicFields() bool {
if x != nil {
return x.RejectUnknownDynamicFields
}
return false
}
func (x *CommandLineOptions) GetIgnoreUnknownDynamicFields() bool {
if x != nil {
return x.IgnoreUnknownDynamicFields
}
return false
}
func (x *CommandLineOptions) GetAdminAddressPath() string {
if x != nil {
return x.AdminAddressPath
}
return ""
}
func (x *CommandLineOptions) GetLocalAddressIpVersion() CommandLineOptions_IpVersion {
if x != nil {
return x.LocalAddressIpVersion
}
return CommandLineOptions_v4
}
func (x *CommandLineOptions) GetLogLevel() string {
if x != nil {
return x.LogLevel
}
return ""
}
func (x *CommandLineOptions) GetComponentLogLevel() string {
if x != nil {
return x.ComponentLogLevel
}
return ""
}
func (x *CommandLineOptions) GetLogFormat() string {
if x != nil {
return x.LogFormat
}
return ""
}
func (x *CommandLineOptions) GetLogFormatEscaped() bool {
if x != nil {
return x.LogFormatEscaped
}
return false
}
func (x *CommandLineOptions) GetLogPath() string {
if x != nil {
return x.LogPath
}
return ""
}
func (x *CommandLineOptions) GetServiceCluster() string {
if x != nil {
return x.ServiceCluster
}
return ""
}
func (x *CommandLineOptions) GetServiceNode() string {
if x != nil {
return x.ServiceNode
}
return ""
}
func (x *CommandLineOptions) GetServiceZone() string {
if x != nil {
return x.ServiceZone
}
return ""
}
func (x *CommandLineOptions) GetFileFlushInterval() *duration.Duration {
if x != nil {
return x.FileFlushInterval
}
return nil
}
func (x *CommandLineOptions) GetDrainTime() *duration.Duration {
if x != nil {
return x.DrainTime
}
return nil
}
func (x *CommandLineOptions) GetDrainStrategy() CommandLineOptions_DrainStrategy {
if x != nil {
return x.DrainStrategy
}
return CommandLineOptions_Gradual
}
func (x *CommandLineOptions) GetParentShutdownTime() *duration.Duration {
if x != nil {
return x.ParentShutdownTime
}
return nil
}
func (x *CommandLineOptions) GetMode() CommandLineOptions_Mode {
if x != nil {
return x.Mode
}
return CommandLineOptions_Serve
}
func (x *CommandLineOptions) GetDisableHotRestart() bool {
if x != nil {
return x.DisableHotRestart
}
return false
}
func (x *CommandLineOptions) GetEnableMutexTracing() bool {
if x != nil {
return x.EnableMutexTracing
}
return false
}
func (x *CommandLineOptions) GetRestartEpoch() uint32 {
if x != nil {
return x.RestartEpoch
}
return 0
}
func (x *CommandLineOptions) GetCpusetThreads() bool {
if x != nil {
return x.CpusetThreads
}
return false
}
func (x *CommandLineOptions) GetDisabledExtensions() []string {
if x != nil {
return x.DisabledExtensions
}
return nil
}
func (x *CommandLineOptions) GetBootstrapVersion() uint32 {
if x != nil {
return x.BootstrapVersion
}
return 0
}
func (x *CommandLineOptions) GetEnableFineGrainLogging() bool {
if x != nil {
return x.EnableFineGrainLogging
}
return false
}
func (x *CommandLineOptions) GetSocketPath() string {
if x != nil {
return x.SocketPath
}
return ""
}
func (x *CommandLineOptions) GetSocketMode() uint32 {
if x != nil {
return x.SocketMode
}
return 0
}
func (x *CommandLineOptions) GetEnableCoreDump() bool {
if x != nil {
return x.EnableCoreDump
}
return false
}
// Deprecated: Do not use.
func (x *CommandLineOptions) GetHiddenEnvoyDeprecatedMaxStats() uint64 {
if x != nil {
return x.HiddenEnvoyDeprecatedMaxStats
}
return 0
}
// Deprecated: Do not use.
func (x *CommandLineOptions) GetHiddenEnvoyDeprecatedMaxObjNameLen() uint64 {
if x != nil {
return x.HiddenEnvoyDeprecatedMaxObjNameLen
}
return 0
}
var File_envoy_admin_v3_server_info_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_server_info_proto_rawDesc = []byte{
0x0a, 0x20, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x0e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e,
0x76, 0x33, 0x1a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75,
0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e,
0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x98, 0x04, 0x0a, 0x0a, 0x53,
0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
0x2e, 0x76, 0x33, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53,
0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4b, 0x0a, 0x14, 0x75,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x70,
0x6f, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x72, 0x72,
0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x45, 0x0a, 0x11, 0x75, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f,
0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x12,
0x2e, 0x0a, 0x13, 0x68, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x68, 0x6f,
0x74, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x54, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x5f,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x43,
0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52,
0x04, 0x6e, 0x6f, 0x64, 0x65, 0x22, 0x47, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x08,
0x0a, 0x04, 0x4c, 0x49, 0x56, 0x45, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x52, 0x41, 0x49,
0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x52, 0x45, 0x5f, 0x49, 0x4e,
0x49, 0x54, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c,
0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x3a, 0x25,
0x9a, 0xc5, 0x88, 0x1e, 0x20, 0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d,
0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65,
0x72, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xef, 0x0f, 0x0a, 0x12, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e,
0x64, 0x4c, 0x69, 0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x17, 0x0a, 0x07,
0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x62,
0x61, 0x73, 0x65, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x5f, 0x64, 0x79, 0x6e,
0x61, 0x6d, 0x69, 0x63, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x1f, 0x20, 0x01,
0x28, 0x08, 0x52, 0x10, 0x75, 0x73, 0x65, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, 0x61,
0x73, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x5f,
0x70, 0x61, 0x74, 0x68, 0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65,
0x49, 0x64, 0x50, 0x61, 0x74, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72,
0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e,
0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x3d, 0x0a, 0x1b, 0x61, 0x6c,
0x6c, 0x6f, 0x77, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74,
0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x53, 0x74, 0x61,
0x74, 0x69, 0x63, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x41, 0x0a, 0x1d, 0x72, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x64, 0x79, 0x6e, 0x61,
0x6d, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x08,
0x52, 0x1a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x44,
0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x41, 0x0a, 0x1d,
0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x64,
0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x1e, 0x20,
0x01, 0x28, 0x08, 0x52, 0x1a, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x6b, 0x6e, 0x6f,
0x77, 0x6e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12,
0x2c, 0x0a, 0x12, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x64, 0x6d,
0x69, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x65, 0x0a,
0x18, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x69,
0x70, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x2c, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33,
0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2e, 0x49, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x15, 0x6c,
0x6f, 0x63, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x49, 0x70, 0x56, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65,
0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65,
0x6c, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x6c,
0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11,
0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65,
0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x65,
0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x6c, 0x6f,
0x67, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x45, 0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x12, 0x19,
0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x6c, 0x6f, 0x67, 0x50, 0x61, 0x74, 0x68, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72,
0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74,
0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f,
0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72,
0x76, 0x69, 0x63, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x49, 0x0a, 0x13, 0x66, 0x69, 0x6c, 0x65,
0x5f, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18,
0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x11, 0x66, 0x69, 0x6c, 0x65, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x74, 0x65, 0x72,
0x76, 0x61, 0x6c, 0x12, 0x38, 0x0a, 0x0a, 0x64, 0x72, 0x61, 0x69, 0x6e, 0x5f, 0x74, 0x69, 0x6d,
0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x09, 0x64, 0x72, 0x61, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x57, 0x0a,
0x0e, 0x64, 0x72, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18,
0x21, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64,
0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69,
0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x44, 0x72, 0x61, 0x69, 0x6e, 0x53,
0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x0d, 0x64, 0x72, 0x61, 0x69, 0x6e, 0x53, 0x74,
0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x54,
0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e,
0x76, 0x33, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65,
0x12, 0x2e, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x68, 0x6f, 0x74, 0x5f,
0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64,
0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x48, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74,
0x12, 0x30, 0x0a, 0x14, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x78,
0x5f, 0x74, 0x72, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12,
0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x54, 0x72, 0x61, 0x63, 0x69,
0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x65, 0x70,
0x6f, 0x63, 0x68, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x61,
0x72, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x70, 0x75, 0x73, 0x65,
0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0d, 0x63, 0x70, 0x75, 0x73, 0x65, 0x74, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x2f,
0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, 0x69, 0x73,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12,
0x2b, 0x0a, 0x11, 0x62, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x5f, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x62, 0x6f, 0x6f, 0x74,
0x73, 0x74, 0x72, 0x61, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x19,
0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6e, 0x65, 0x5f, 0x67, 0x72, 0x61, 0x69,
0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x22, 0x20, 0x01, 0x28, 0x08, 0x52,
0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x65, 0x47, 0x72, 0x61, 0x69, 0x6e,
0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x63, 0x6b, 0x65,
0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f,
0x63, 0x6b, 0x65, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x63, 0x6b,
0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73,
0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x65, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x64, 0x75, 0x6d, 0x70, 0x18, 0x25, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x72, 0x65, 0x44,
0x75, 0x6d, 0x70, 0x12, 0x5b, 0x0a, 0x21, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x5f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6d,
0x61, 0x78, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x04, 0x42, 0x11,
0x18, 0x01, 0x92, 0xc7, 0x86, 0xd8, 0x04, 0x03, 0x33, 0x2e, 0x30, 0xb8, 0xee, 0xf2, 0xd2, 0x05,
0x01, 0x52, 0x1d, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x44, 0x65,
0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x74, 0x61, 0x74, 0x73,
0x12, 0x67, 0x0a, 0x28, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x5f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x5f,
0x6f, 0x62, 0x6a, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x15, 0x20, 0x01,
0x28, 0x04, 0x42, 0x11, 0x18, 0x01, 0x92, 0xc7, 0x86, 0xd8, 0x04, 0x03, 0x33, 0x2e, 0x30, 0xb8,
0xee, 0xf2, 0xd2, 0x05, 0x01, 0x52, 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x45, 0x6e, 0x76,
0x6f, 0x79, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x4f,
0x62, 0x6a, 0x4e, 0x61, 0x6d, 0x65, 0x4c, 0x65, 0x6e, 0x22, 0x1b, 0x0a, 0x09, 0x49, 0x70, 0x56,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x76, 0x34, 0x10, 0x00, 0x12, 0x06,
0x0a, 0x02, 0x76, 0x36, 0x10, 0x01, 0x22, 0x2d, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x09,
0x0a, 0x05, 0x53, 0x65, 0x72, 0x76, 0x65, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x56, 0x61, 0x6c,
0x69, 0x64, 0x61, 0x74, 0x65, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x6e, 0x69, 0x74, 0x4f,
0x6e, 0x6c, 0x79, 0x10, 0x02, 0x22, 0x2b, 0x0a, 0x0d, 0x44, 0x72, 0x61, 0x69, 0x6e, 0x53, 0x74,
0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x72, 0x61, 0x64, 0x75, 0x61,
0x6c, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65,
0x10, 0x01, 0x3a, 0x2d, 0x9a, 0xc5, 0x88, 0x1e, 0x28, 0x0a, 0x26, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43,
0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x4a, 0x04, 0x08, 0x0c, 0x10, 0x0d, 0x42, 0x39, 0x0a, 0x1c, 0x69, 0x6f, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x0f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49,
0x6e, 0x66, 0x6f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02,
0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_server_info_proto_rawDescOnce sync.Once
file_envoy_admin_v3_server_info_proto_rawDescData = file_envoy_admin_v3_server_info_proto_rawDesc
)
func file_envoy_admin_v3_server_info_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_server_info_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_server_info_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_server_info_proto_rawDescData)
})
return file_envoy_admin_v3_server_info_proto_rawDescData
}
var file_envoy_admin_v3_server_info_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_envoy_admin_v3_server_info_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_envoy_admin_v3_server_info_proto_goTypes = []interface{}{
(ServerInfo_State)(0), // 0: envoy.admin.v3.ServerInfo.State
(CommandLineOptions_IpVersion)(0), // 1: envoy.admin.v3.CommandLineOptions.IpVersion
(CommandLineOptions_Mode)(0), // 2: envoy.admin.v3.CommandLineOptions.Mode
(CommandLineOptions_DrainStrategy)(0), // 3: envoy.admin.v3.CommandLineOptions.DrainStrategy
(*ServerInfo)(nil), // 4: envoy.admin.v3.ServerInfo
(*CommandLineOptions)(nil), // 5: envoy.admin.v3.CommandLineOptions
(*duration.Duration)(nil), // 6: google.protobuf.Duration
(*v3.Node)(nil), // 7: envoy.config.core.v3.Node
}
var file_envoy_admin_v3_server_info_proto_depIdxs = []int32{
0, // 0: envoy.admin.v3.ServerInfo.state:type_name -> envoy.admin.v3.ServerInfo.State
6, // 1: envoy.admin.v3.ServerInfo.uptime_current_epoch:type_name -> google.protobuf.Duration
6, // 2: envoy.admin.v3.ServerInfo.uptime_all_epochs:type_name -> google.protobuf.Duration
5, // 3: envoy.admin.v3.ServerInfo.command_line_options:type_name -> envoy.admin.v3.CommandLineOptions
7, // 4: envoy.admin.v3.ServerInfo.node:type_name -> envoy.config.core.v3.Node
1, // 5: envoy.admin.v3.CommandLineOptions.local_address_ip_version:type_name -> envoy.admin.v3.CommandLineOptions.IpVersion
6, // 6: envoy.admin.v3.CommandLineOptions.file_flush_interval:type_name -> google.protobuf.Duration
6, // 7: envoy.admin.v3.CommandLineOptions.drain_time:type_name -> google.protobuf.Duration
3, // 8: envoy.admin.v3.CommandLineOptions.drain_strategy:type_name -> envoy.admin.v3.CommandLineOptions.DrainStrategy
6, // 9: envoy.admin.v3.CommandLineOptions.parent_shutdown_time:type_name -> google.protobuf.Duration
2, // 10: envoy.admin.v3.CommandLineOptions.mode:type_name -> envoy.admin.v3.CommandLineOptions.Mode
11, // [11:11] is the sub-list for method output_type
11, // [11:11] is the sub-list for method input_type
11, // [11:11] is the sub-list for extension type_name
11, // [11:11] is the sub-list for extension extendee
0, // [0:11] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_server_info_proto_init() }
func file_envoy_admin_v3_server_info_proto_init() {
if File_envoy_admin_v3_server_info_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_server_info_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ServerInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_admin_v3_server_info_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CommandLineOptions); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_server_info_proto_rawDesc,
NumEnums: 4,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_server_info_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_server_info_proto_depIdxs,
EnumInfos: file_envoy_admin_v3_server_info_proto_enumTypes,
MessageInfos: file_envoy_admin_v3_server_info_proto_msgTypes,
}.Build()
File_envoy_admin_v3_server_info_proto = out.File
file_envoy_admin_v3_server_info_proto_rawDesc = nil
file_envoy_admin_v3_server_info_proto_goTypes = nil
file_envoy_admin_v3_server_info_proto_depIdxs = nil
}

View file

@ -0,0 +1,305 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/server_info.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on ServerInfo with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *ServerInfo) Validate() error {
if m == nil {
return nil
}
// no validation rules for Version
// no validation rules for State
if v, ok := interface{}(m.GetUptimeCurrentEpoch()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ServerInfoValidationError{
field: "UptimeCurrentEpoch",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetUptimeAllEpochs()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ServerInfoValidationError{
field: "UptimeAllEpochs",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for HotRestartVersion
if v, ok := interface{}(m.GetCommandLineOptions()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ServerInfoValidationError{
field: "CommandLineOptions",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetNode()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ServerInfoValidationError{
field: "Node",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// ServerInfoValidationError is the validation error returned by
// ServerInfo.Validate if the designated constraints aren't met.
type ServerInfoValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ServerInfoValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ServerInfoValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ServerInfoValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ServerInfoValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ServerInfoValidationError) ErrorName() string { return "ServerInfoValidationError" }
// Error satisfies the builtin error interface
func (e ServerInfoValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sServerInfo.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ServerInfoValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ServerInfoValidationError{}
// Validate checks the field values on CommandLineOptions with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CommandLineOptions) Validate() error {
if m == nil {
return nil
}
// no validation rules for BaseId
// no validation rules for UseDynamicBaseId
// no validation rules for BaseIdPath
// no validation rules for Concurrency
// no validation rules for ConfigPath
// no validation rules for ConfigYaml
// no validation rules for AllowUnknownStaticFields
// no validation rules for RejectUnknownDynamicFields
// no validation rules for IgnoreUnknownDynamicFields
// no validation rules for AdminAddressPath
// no validation rules for LocalAddressIpVersion
// no validation rules for LogLevel
// no validation rules for ComponentLogLevel
// no validation rules for LogFormat
// no validation rules for LogFormatEscaped
// no validation rules for LogPath
// no validation rules for ServiceCluster
// no validation rules for ServiceNode
// no validation rules for ServiceZone
if v, ok := interface{}(m.GetFileFlushInterval()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommandLineOptionsValidationError{
field: "FileFlushInterval",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetDrainTime()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommandLineOptionsValidationError{
field: "DrainTime",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for DrainStrategy
if v, ok := interface{}(m.GetParentShutdownTime()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommandLineOptionsValidationError{
field: "ParentShutdownTime",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for Mode
// no validation rules for DisableHotRestart
// no validation rules for EnableMutexTracing
// no validation rules for RestartEpoch
// no validation rules for CpusetThreads
// no validation rules for BootstrapVersion
// no validation rules for EnableFineGrainLogging
// no validation rules for SocketPath
// no validation rules for SocketMode
// no validation rules for EnableCoreDump
// no validation rules for HiddenEnvoyDeprecatedMaxStats
// no validation rules for HiddenEnvoyDeprecatedMaxObjNameLen
return nil
}
// CommandLineOptionsValidationError is the validation error returned by
// CommandLineOptions.Validate if the designated constraints aren't met.
type CommandLineOptionsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CommandLineOptionsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CommandLineOptionsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CommandLineOptionsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CommandLineOptionsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CommandLineOptionsValidationError) ErrorName() string {
return "CommandLineOptionsValidationError"
}
// Error satisfies the builtin error interface
func (e CommandLineOptionsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCommandLineOptions.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CommandLineOptionsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CommandLineOptionsValidationError{}

View file

@ -0,0 +1,183 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/admin/v3/tap.proto
package envoy_admin_v3
import (
_ "github.com/cncf/xds/go/udpa/annotations"
v3 "github.com/envoyproxy/go-control-plane/envoy/config/tap/v3"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// The /tap admin request body that is used to configure an active tap session.
type TapRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The opaque configuration ID used to match the configuration to a loaded extension.
// A tap extension configures a similar opaque ID that is used to match.
ConfigId string `protobuf:"bytes,1,opt,name=config_id,json=configId,proto3" json:"config_id,omitempty"`
// The tap configuration to load.
TapConfig *v3.TapConfig `protobuf:"bytes,2,opt,name=tap_config,json=tapConfig,proto3" json:"tap_config,omitempty"`
}
func (x *TapRequest) Reset() {
*x = TapRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_admin_v3_tap_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TapRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TapRequest) ProtoMessage() {}
func (x *TapRequest) ProtoReflect() protoreflect.Message {
mi := &file_envoy_admin_v3_tap_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TapRequest.ProtoReflect.Descriptor instead.
func (*TapRequest) Descriptor() ([]byte, []int) {
return file_envoy_admin_v3_tap_proto_rawDescGZIP(), []int{0}
}
func (x *TapRequest) GetConfigId() string {
if x != nil {
return x.ConfigId
}
return ""
}
func (x *TapRequest) GetTapConfig() *v3.TapConfig {
if x != nil {
return x.TapConfig
}
return nil
}
var File_envoy_admin_v3_tap_proto protoreflect.FileDescriptor
var file_envoy_admin_v3_tap_proto_rawDesc = []byte{
0x0a, 0x18, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x76, 0x33,
0x2f, 0x74, 0x61, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x1a, 0x20, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x74, 0x61, 0x70, 0x2f, 0x76, 0x33, 0x2f,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64,
0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73,
0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70,
0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa2, 0x01, 0x0a, 0x0a, 0x54, 0x61, 0x70, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02,
0x10, 0x01, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x0a,
0x74, 0x61, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1e, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
0x74, 0x61, 0x70, 0x2e, 0x76, 0x33, 0x2e, 0x54, 0x61, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x09, 0x74, 0x61, 0x70, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x25, 0x9a, 0xc5, 0x88, 0x1e, 0x20, 0x0a, 0x1e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x2e, 0x54, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x32, 0x0a, 0x1c,
0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x76, 0x33, 0x42, 0x08, 0x54, 0x61,
0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_admin_v3_tap_proto_rawDescOnce sync.Once
file_envoy_admin_v3_tap_proto_rawDescData = file_envoy_admin_v3_tap_proto_rawDesc
)
func file_envoy_admin_v3_tap_proto_rawDescGZIP() []byte {
file_envoy_admin_v3_tap_proto_rawDescOnce.Do(func() {
file_envoy_admin_v3_tap_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_admin_v3_tap_proto_rawDescData)
})
return file_envoy_admin_v3_tap_proto_rawDescData
}
var file_envoy_admin_v3_tap_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_admin_v3_tap_proto_goTypes = []interface{}{
(*TapRequest)(nil), // 0: envoy.admin.v3.TapRequest
(*v3.TapConfig)(nil), // 1: envoy.config.tap.v3.TapConfig
}
var file_envoy_admin_v3_tap_proto_depIdxs = []int32{
1, // 0: envoy.admin.v3.TapRequest.tap_config:type_name -> envoy.config.tap.v3.TapConfig
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_envoy_admin_v3_tap_proto_init() }
func file_envoy_admin_v3_tap_proto_init() {
if File_envoy_admin_v3_tap_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_admin_v3_tap_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TapRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_admin_v3_tap_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_admin_v3_tap_proto_goTypes,
DependencyIndexes: file_envoy_admin_v3_tap_proto_depIdxs,
MessageInfos: file_envoy_admin_v3_tap_proto_msgTypes,
}.Build()
File_envoy_admin_v3_tap_proto = out.File
file_envoy_admin_v3_tap_proto_rawDesc = nil
file_envoy_admin_v3_tap_proto_goTypes = nil
file_envoy_admin_v3_tap_proto_depIdxs = nil
}

View file

@ -0,0 +1,122 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/admin/v3/tap.proto
package envoy_admin_v3
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on TapRequest with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *TapRequest) Validate() error {
if m == nil {
return nil
}
if utf8.RuneCountInString(m.GetConfigId()) < 1 {
return TapRequestValidationError{
field: "ConfigId",
reason: "value length must be at least 1 runes",
}
}
if m.GetTapConfig() == nil {
return TapRequestValidationError{
field: "TapConfig",
reason: "value is required",
}
}
if v, ok := interface{}(m.GetTapConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TapRequestValidationError{
field: "TapConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// TapRequestValidationError is the validation error returned by
// TapRequest.Validate if the designated constraints aren't met.
type TapRequestValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e TapRequestValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e TapRequestValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e TapRequestValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e TapRequestValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e TapRequestValidationError) ErrorName() string { return "TapRequestValidationError" }
// Error satisfies the builtin error interface
func (e TapRequestValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sTapRequest.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = TapRequestValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = TapRequestValidationError{}

View file

@ -0,0 +1,160 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/annotations/deprecation.proto
package envoy_annotations
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
descriptorpb "google.golang.org/protobuf/types/descriptorpb"
reflect "reflect"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
var file_envoy_annotations_deprecation_proto_extTypes = []protoimpl.ExtensionInfo{
{
ExtendedType: (*descriptorpb.FieldOptions)(nil),
ExtensionType: (*bool)(nil),
Field: 189503207,
Name: "envoy.annotations.disallowed_by_default",
Tag: "varint,189503207,opt,name=disallowed_by_default",
Filename: "envoy/annotations/deprecation.proto",
},
{
ExtendedType: (*descriptorpb.FieldOptions)(nil),
ExtensionType: (*string)(nil),
Field: 157299826,
Name: "envoy.annotations.deprecated_at_minor_version",
Tag: "bytes,157299826,opt,name=deprecated_at_minor_version",
Filename: "envoy/annotations/deprecation.proto",
},
{
ExtendedType: (*descriptorpb.EnumValueOptions)(nil),
ExtensionType: (*bool)(nil),
Field: 70100853,
Name: "envoy.annotations.disallowed_by_default_enum",
Tag: "varint,70100853,opt,name=disallowed_by_default_enum",
Filename: "envoy/annotations/deprecation.proto",
},
{
ExtendedType: (*descriptorpb.EnumValueOptions)(nil),
ExtensionType: (*string)(nil),
Field: 181198657,
Name: "envoy.annotations.deprecated_at_minor_version_enum",
Tag: "bytes,181198657,opt,name=deprecated_at_minor_version_enum",
Filename: "envoy/annotations/deprecation.proto",
},
}
// Extension fields to descriptorpb.FieldOptions.
var (
// optional bool disallowed_by_default = 189503207;
E_DisallowedByDefault = &file_envoy_annotations_deprecation_proto_extTypes[0]
// The API major and minor version on which the field was deprecated
// (e.g., "3.5" for major version 3 and minor version 5).
//
// optional string deprecated_at_minor_version = 157299826;
E_DeprecatedAtMinorVersion = &file_envoy_annotations_deprecation_proto_extTypes[1]
)
// Extension fields to descriptorpb.EnumValueOptions.
var (
// optional bool disallowed_by_default_enum = 70100853;
E_DisallowedByDefaultEnum = &file_envoy_annotations_deprecation_proto_extTypes[2]
// The API major and minor version on which the enum value was deprecated
// (e.g., "3.5" for major version 3 and minor version 5).
//
// optional string deprecated_at_minor_version_enum = 181198657;
E_DeprecatedAtMinorVersionEnum = &file_envoy_annotations_deprecation_proto_extTypes[3]
)
var File_envoy_annotations_deprecation_proto protoreflect.FileDescriptor
var file_envoy_annotations_deprecation_proto_rawDesc = []byte{
0x0a, 0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x6e, 0x6e,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x3a, 0x54, 0x0a, 0x15, 0x64, 0x69,
0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x64, 0x65, 0x66, 0x61,
0x75, 0x6c, 0x74, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x18, 0xe7, 0xad, 0xae, 0x5a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x69, 0x73,
0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x42, 0x79, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
0x3a, 0x5f, 0x0a, 0x1b, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
0x74, 0x5f, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf2,
0xe8, 0x80, 0x4b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61,
0x74, 0x65, 0x64, 0x41, 0x74, 0x4d, 0x69, 0x6e, 0x6f, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x3a, 0x61, 0x0a, 0x1a, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f,
0x62, 0x79, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x12,
0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x18, 0xf5, 0xce, 0xb6, 0x21, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x64, 0x69, 0x73,
0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x42, 0x79, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
0x45, 0x6e, 0x75, 0x6d, 0x3a, 0x6c, 0x0a, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74,
0x65, 0x64, 0x5f, 0x61, 0x74, 0x5f, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc1, 0xbe, 0xb3, 0x56,
0x20, 0x01, 0x28, 0x09, 0x52, 0x1c, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64,
0x41, 0x74, 0x4d, 0x69, 0x6e, 0x6f, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
0x75, 0x6d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_envoy_annotations_deprecation_proto_goTypes = []interface{}{
(*descriptorpb.FieldOptions)(nil), // 0: google.protobuf.FieldOptions
(*descriptorpb.EnumValueOptions)(nil), // 1: google.protobuf.EnumValueOptions
}
var file_envoy_annotations_deprecation_proto_depIdxs = []int32{
0, // 0: envoy.annotations.disallowed_by_default:extendee -> google.protobuf.FieldOptions
0, // 1: envoy.annotations.deprecated_at_minor_version:extendee -> google.protobuf.FieldOptions
1, // 2: envoy.annotations.disallowed_by_default_enum:extendee -> google.protobuf.EnumValueOptions
1, // 3: envoy.annotations.deprecated_at_minor_version_enum:extendee -> google.protobuf.EnumValueOptions
4, // [4:4] is the sub-list for method output_type
4, // [4:4] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
0, // [0:4] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_envoy_annotations_deprecation_proto_init() }
func file_envoy_annotations_deprecation_proto_init() {
if File_envoy_annotations_deprecation_proto != nil {
return
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_annotations_deprecation_proto_rawDesc,
NumEnums: 0,
NumMessages: 0,
NumExtensions: 4,
NumServices: 0,
},
GoTypes: file_envoy_annotations_deprecation_proto_goTypes,
DependencyIndexes: file_envoy_annotations_deprecation_proto_depIdxs,
ExtensionInfos: file_envoy_annotations_deprecation_proto_extTypes,
}.Build()
File_envoy_annotations_deprecation_proto = out.File
file_envoy_annotations_deprecation_proto_rawDesc = nil
file_envoy_annotations_deprecation_proto_goTypes = nil
file_envoy_annotations_deprecation_proto_depIdxs = nil
}

View file

@ -0,0 +1,34 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/annotations/deprecation.proto
package envoy_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)

View file

@ -0,0 +1,180 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/annotations/resource.proto
package envoy_annotations
import (
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
descriptorpb "google.golang.org/protobuf/types/descriptorpb"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type ResourceAnnotation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Annotation for xDS services that indicates the fully-qualified Protobuf type for the resource
// type.
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
}
func (x *ResourceAnnotation) Reset() {
*x = ResourceAnnotation{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_annotations_resource_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResourceAnnotation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResourceAnnotation) ProtoMessage() {}
func (x *ResourceAnnotation) ProtoReflect() protoreflect.Message {
mi := &file_envoy_annotations_resource_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ResourceAnnotation.ProtoReflect.Descriptor instead.
func (*ResourceAnnotation) Descriptor() ([]byte, []int) {
return file_envoy_annotations_resource_proto_rawDescGZIP(), []int{0}
}
func (x *ResourceAnnotation) GetType() string {
if x != nil {
return x.Type
}
return ""
}
var file_envoy_annotations_resource_proto_extTypes = []protoimpl.ExtensionInfo{
{
ExtendedType: (*descriptorpb.ServiceOptions)(nil),
ExtensionType: (*ResourceAnnotation)(nil),
Field: 265073217,
Name: "envoy.annotations.resource",
Tag: "bytes,265073217,opt,name=resource",
Filename: "envoy/annotations/resource.proto",
},
}
// Extension fields to descriptorpb.ServiceOptions.
var (
// optional envoy.annotations.ResourceAnnotation resource = 265073217;
E_Resource = &file_envoy_annotations_resource_proto_extTypes[0]
)
var File_envoy_annotations_resource_proto protoreflect.FileDescriptor
var file_envoy_annotations_resource_proto_rawDesc = []byte{
0x0a, 0x20, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x28, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a,
0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70,
0x65, 0x3a, 0x65, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1f, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc1,
0xe4, 0xb2, 0x7e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08,
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_annotations_resource_proto_rawDescOnce sync.Once
file_envoy_annotations_resource_proto_rawDescData = file_envoy_annotations_resource_proto_rawDesc
)
func file_envoy_annotations_resource_proto_rawDescGZIP() []byte {
file_envoy_annotations_resource_proto_rawDescOnce.Do(func() {
file_envoy_annotations_resource_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_annotations_resource_proto_rawDescData)
})
return file_envoy_annotations_resource_proto_rawDescData
}
var file_envoy_annotations_resource_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_annotations_resource_proto_goTypes = []interface{}{
(*ResourceAnnotation)(nil), // 0: envoy.annotations.ResourceAnnotation
(*descriptorpb.ServiceOptions)(nil), // 1: google.protobuf.ServiceOptions
}
var file_envoy_annotations_resource_proto_depIdxs = []int32{
1, // 0: envoy.annotations.resource:extendee -> google.protobuf.ServiceOptions
0, // 1: envoy.annotations.resource:type_name -> envoy.annotations.ResourceAnnotation
2, // [2:2] is the sub-list for method output_type
2, // [2:2] is the sub-list for method input_type
1, // [1:2] is the sub-list for extension type_name
0, // [0:1] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_envoy_annotations_resource_proto_init() }
func file_envoy_annotations_resource_proto_init() {
if File_envoy_annotations_resource_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_annotations_resource_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResourceAnnotation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_annotations_resource_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 1,
NumServices: 0,
},
GoTypes: file_envoy_annotations_resource_proto_goTypes,
DependencyIndexes: file_envoy_annotations_resource_proto_depIdxs,
MessageInfos: file_envoy_annotations_resource_proto_msgTypes,
ExtensionInfos: file_envoy_annotations_resource_proto_extTypes,
}.Build()
File_envoy_annotations_resource_proto = out.File
file_envoy_annotations_resource_proto_rawDesc = nil
file_envoy_annotations_resource_proto_goTypes = nil
file_envoy_annotations_resource_proto_depIdxs = nil
}

View file

@ -0,0 +1,103 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/annotations/resource.proto
package envoy_annotations
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on ResourceAnnotation with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *ResourceAnnotation) Validate() error {
if m == nil {
return nil
}
// no validation rules for Type
return nil
}
// ResourceAnnotationValidationError is the validation error returned by
// ResourceAnnotation.Validate if the designated constraints aren't met.
type ResourceAnnotationValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ResourceAnnotationValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ResourceAnnotationValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ResourceAnnotationValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ResourceAnnotationValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ResourceAnnotationValidationError) ErrorName() string {
return "ResourceAnnotationValidationError"
}
// Error satisfies the builtin error interface
func (e ResourceAnnotationValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sResourceAnnotation.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ResourceAnnotationValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ResourceAnnotationValidationError{}

View file

@ -0,0 +1,85 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/auth/cert.proto
package envoy_api_v2_auth
import (
_ "github.com/cncf/xds/go/udpa/annotations"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
var File_envoy_api_v2_auth_cert_proto protoreflect.FileDescriptor
var file_envoy_api_v2_auth_cert_proto_rawDesc = []byte{
0x0a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x61,
0x75, 0x74, 0x68, 0x2f, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74,
0x68, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f,
0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f,
0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x1b, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f,
0x61, 0x75, 0x74, 0x68, 0x2f, 0x74, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x42, 0x5f,
0x0a, 0x1f, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74,
0x68, 0x42, 0x09, 0x43, 0x65, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xf2, 0x98,
0xfe, 0x8f, 0x05, 0x2b, 0x12, 0x29, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65,
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74,
0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2e, 0x74, 0x6c, 0x73, 0x2e, 0x76, 0x33, 0x50,
0x01, 0x50, 0x02, 0x50, 0x03, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_envoy_api_v2_auth_cert_proto_goTypes = []interface{}{}
var file_envoy_api_v2_auth_cert_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_auth_cert_proto_init() }
func file_envoy_api_v2_auth_cert_proto_init() {
if File_envoy_api_v2_auth_cert_proto != nil {
return
}
file_envoy_api_v2_auth_common_proto_init()
file_envoy_api_v2_auth_secret_proto_init()
file_envoy_api_v2_auth_tls_proto_init()
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_auth_cert_proto_rawDesc,
NumEnums: 0,
NumMessages: 0,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_auth_cert_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_auth_cert_proto_depIdxs,
}.Build()
File_envoy_api_v2_auth_cert_proto = out.File
file_envoy_api_v2_auth_cert_proto_rawDesc = nil
file_envoy_api_v2_auth_cert_proto_goTypes = nil
file_envoy_api_v2_auth_cert_proto_depIdxs = nil
}

View file

@ -0,0 +1,34 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/auth/cert.proto
package envoy_api_v2_auth
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,590 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/auth/common.proto
package envoy_api_v2_auth
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on TlsParameters with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *TlsParameters) Validate() error {
if m == nil {
return nil
}
if _, ok := TlsParameters_TlsProtocol_name[int32(m.GetTlsMinimumProtocolVersion())]; !ok {
return TlsParametersValidationError{
field: "TlsMinimumProtocolVersion",
reason: "value must be one of the defined enum values",
}
}
if _, ok := TlsParameters_TlsProtocol_name[int32(m.GetTlsMaximumProtocolVersion())]; !ok {
return TlsParametersValidationError{
field: "TlsMaximumProtocolVersion",
reason: "value must be one of the defined enum values",
}
}
return nil
}
// TlsParametersValidationError is the validation error returned by
// TlsParameters.Validate if the designated constraints aren't met.
type TlsParametersValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e TlsParametersValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e TlsParametersValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e TlsParametersValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e TlsParametersValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e TlsParametersValidationError) ErrorName() string { return "TlsParametersValidationError" }
// Error satisfies the builtin error interface
func (e TlsParametersValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sTlsParameters.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = TlsParametersValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = TlsParametersValidationError{}
// Validate checks the field values on PrivateKeyProvider with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *PrivateKeyProvider) Validate() error {
if m == nil {
return nil
}
if len(m.GetProviderName()) < 1 {
return PrivateKeyProviderValidationError{
field: "ProviderName",
reason: "value length must be at least 1 bytes",
}
}
switch m.ConfigType.(type) {
case *PrivateKeyProvider_Config:
if v, ok := interface{}(m.GetConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return PrivateKeyProviderValidationError{
field: "Config",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *PrivateKeyProvider_TypedConfig:
if v, ok := interface{}(m.GetTypedConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return PrivateKeyProviderValidationError{
field: "TypedConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// PrivateKeyProviderValidationError is the validation error returned by
// PrivateKeyProvider.Validate if the designated constraints aren't met.
type PrivateKeyProviderValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e PrivateKeyProviderValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e PrivateKeyProviderValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e PrivateKeyProviderValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e PrivateKeyProviderValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e PrivateKeyProviderValidationError) ErrorName() string {
return "PrivateKeyProviderValidationError"
}
// Error satisfies the builtin error interface
func (e PrivateKeyProviderValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sPrivateKeyProvider.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = PrivateKeyProviderValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = PrivateKeyProviderValidationError{}
// Validate checks the field values on TlsCertificate with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *TlsCertificate) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetCertificateChain()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsCertificateValidationError{
field: "CertificateChain",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetPrivateKey()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsCertificateValidationError{
field: "PrivateKey",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetPrivateKeyProvider()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsCertificateValidationError{
field: "PrivateKeyProvider",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetPassword()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsCertificateValidationError{
field: "Password",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetOcspStaple()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsCertificateValidationError{
field: "OcspStaple",
reason: "embedded message failed validation",
cause: err,
}
}
}
for idx, item := range m.GetSignedCertificateTimestamp() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsCertificateValidationError{
field: fmt.Sprintf("SignedCertificateTimestamp[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// TlsCertificateValidationError is the validation error returned by
// TlsCertificate.Validate if the designated constraints aren't met.
type TlsCertificateValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e TlsCertificateValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e TlsCertificateValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e TlsCertificateValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e TlsCertificateValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e TlsCertificateValidationError) ErrorName() string { return "TlsCertificateValidationError" }
// Error satisfies the builtin error interface
func (e TlsCertificateValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sTlsCertificate.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = TlsCertificateValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = TlsCertificateValidationError{}
// Validate checks the field values on TlsSessionTicketKeys with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *TlsSessionTicketKeys) Validate() error {
if m == nil {
return nil
}
if len(m.GetKeys()) < 1 {
return TlsSessionTicketKeysValidationError{
field: "Keys",
reason: "value must contain at least 1 item(s)",
}
}
for idx, item := range m.GetKeys() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TlsSessionTicketKeysValidationError{
field: fmt.Sprintf("Keys[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// TlsSessionTicketKeysValidationError is the validation error returned by
// TlsSessionTicketKeys.Validate if the designated constraints aren't met.
type TlsSessionTicketKeysValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e TlsSessionTicketKeysValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e TlsSessionTicketKeysValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e TlsSessionTicketKeysValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e TlsSessionTicketKeysValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e TlsSessionTicketKeysValidationError) ErrorName() string {
return "TlsSessionTicketKeysValidationError"
}
// Error satisfies the builtin error interface
func (e TlsSessionTicketKeysValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sTlsSessionTicketKeys.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = TlsSessionTicketKeysValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = TlsSessionTicketKeysValidationError{}
// Validate checks the field values on CertificateValidationContext with the
// rules defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CertificateValidationContext) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetTrustedCa()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationContextValidationError{
field: "TrustedCa",
reason: "embedded message failed validation",
cause: err,
}
}
}
for idx, item := range m.GetVerifyCertificateSpki() {
_, _ = idx, item
if len(item) != 44 {
return CertificateValidationContextValidationError{
field: fmt.Sprintf("VerifyCertificateSpki[%v]", idx),
reason: "value length must be 44 bytes",
}
}
}
for idx, item := range m.GetVerifyCertificateHash() {
_, _ = idx, item
if l := len(item); l < 64 || l > 95 {
return CertificateValidationContextValidationError{
field: fmt.Sprintf("VerifyCertificateHash[%v]", idx),
reason: "value length must be between 64 and 95 bytes, inclusive",
}
}
}
for idx, item := range m.GetMatchSubjectAltNames() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationContextValidationError{
field: fmt.Sprintf("MatchSubjectAltNames[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
if v, ok := interface{}(m.GetRequireOcspStaple()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationContextValidationError{
field: "RequireOcspStaple",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetRequireSignedCertificateTimestamp()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationContextValidationError{
field: "RequireSignedCertificateTimestamp",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetCrl()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CertificateValidationContextValidationError{
field: "Crl",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for AllowExpiredCertificate
if _, ok := CertificateValidationContext_TrustChainVerification_name[int32(m.GetTrustChainVerification())]; !ok {
return CertificateValidationContextValidationError{
field: "TrustChainVerification",
reason: "value must be one of the defined enum values",
}
}
return nil
}
// CertificateValidationContextValidationError is the validation error returned
// by CertificateValidationContext.Validate if the designated constraints
// aren't met.
type CertificateValidationContextValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CertificateValidationContextValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CertificateValidationContextValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CertificateValidationContextValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CertificateValidationContextValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CertificateValidationContextValidationError) ErrorName() string {
return "CertificateValidationContextValidationError"
}
// Error satisfies the builtin error interface
func (e CertificateValidationContextValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCertificateValidationContext.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CertificateValidationContextValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CertificateValidationContextValidationError{}

View file

@ -0,0 +1,422 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/auth/secret.proto
package envoy_api_v2_auth
import (
_ "github.com/cncf/xds/go/udpa/annotations"
core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type GenericSecret struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Secret of generic type and is available to filters.
Secret *core.DataSource `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}
func (x *GenericSecret) Reset() {
*x = GenericSecret{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_secret_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GenericSecret) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GenericSecret) ProtoMessage() {}
func (x *GenericSecret) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_secret_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GenericSecret.ProtoReflect.Descriptor instead.
func (*GenericSecret) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_secret_proto_rawDescGZIP(), []int{0}
}
func (x *GenericSecret) GetSecret() *core.DataSource {
if x != nil {
return x.Secret
}
return nil
}
type SdsSecretConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name (FQDN, UUID, SPKI, SHA256, etc.) by which the secret can be uniquely referred to.
// When both name and config are specified, then secret can be fetched and/or reloaded via
// SDS. When only name is specified, then secret will be loaded from static resources.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
SdsConfig *core.ConfigSource `protobuf:"bytes,2,opt,name=sds_config,json=sdsConfig,proto3" json:"sds_config,omitempty"`
}
func (x *SdsSecretConfig) Reset() {
*x = SdsSecretConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_secret_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SdsSecretConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SdsSecretConfig) ProtoMessage() {}
func (x *SdsSecretConfig) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_secret_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SdsSecretConfig.ProtoReflect.Descriptor instead.
func (*SdsSecretConfig) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_secret_proto_rawDescGZIP(), []int{1}
}
func (x *SdsSecretConfig) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *SdsSecretConfig) GetSdsConfig() *core.ConfigSource {
if x != nil {
return x.SdsConfig
}
return nil
}
// [#next-free-field: 6]
type Secret struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name (FQDN, UUID, SPKI, SHA256, etc.) by which the secret can be uniquely referred to.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Types that are assignable to Type:
// *Secret_TlsCertificate
// *Secret_SessionTicketKeys
// *Secret_ValidationContext
// *Secret_GenericSecret
Type isSecret_Type `protobuf_oneof:"type"`
}
func (x *Secret) Reset() {
*x = Secret{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_secret_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Secret) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Secret) ProtoMessage() {}
func (x *Secret) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_secret_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Secret.ProtoReflect.Descriptor instead.
func (*Secret) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_secret_proto_rawDescGZIP(), []int{2}
}
func (x *Secret) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (m *Secret) GetType() isSecret_Type {
if m != nil {
return m.Type
}
return nil
}
func (x *Secret) GetTlsCertificate() *TlsCertificate {
if x, ok := x.GetType().(*Secret_TlsCertificate); ok {
return x.TlsCertificate
}
return nil
}
func (x *Secret) GetSessionTicketKeys() *TlsSessionTicketKeys {
if x, ok := x.GetType().(*Secret_SessionTicketKeys); ok {
return x.SessionTicketKeys
}
return nil
}
func (x *Secret) GetValidationContext() *CertificateValidationContext {
if x, ok := x.GetType().(*Secret_ValidationContext); ok {
return x.ValidationContext
}
return nil
}
func (x *Secret) GetGenericSecret() *GenericSecret {
if x, ok := x.GetType().(*Secret_GenericSecret); ok {
return x.GenericSecret
}
return nil
}
type isSecret_Type interface {
isSecret_Type()
}
type Secret_TlsCertificate struct {
TlsCertificate *TlsCertificate `protobuf:"bytes,2,opt,name=tls_certificate,json=tlsCertificate,proto3,oneof"`
}
type Secret_SessionTicketKeys struct {
SessionTicketKeys *TlsSessionTicketKeys `protobuf:"bytes,3,opt,name=session_ticket_keys,json=sessionTicketKeys,proto3,oneof"`
}
type Secret_ValidationContext struct {
ValidationContext *CertificateValidationContext `protobuf:"bytes,4,opt,name=validation_context,json=validationContext,proto3,oneof"`
}
type Secret_GenericSecret struct {
GenericSecret *GenericSecret `protobuf:"bytes,5,opt,name=generic_secret,json=genericSecret,proto3,oneof"`
}
func (*Secret_TlsCertificate) isSecret_Type() {}
func (*Secret_SessionTicketKeys) isSecret_Type() {}
func (*Secret_ValidationContext) isSecret_Type() {}
func (*Secret_GenericSecret) isSecret_Type() {}
var File_envoy_api_v2_auth_secret_proto protoreflect.FileDescriptor
var file_envoy_api_v2_auth_secret_proto_rawDesc = []byte{
0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x61,
0x75, 0x74, 0x68, 0x2f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61,
0x75, 0x74, 0x68, 0x1a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76,
0x32, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76,
0x32, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x25, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f,
0x63, 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61,
0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x65, 0x6e, 0x73, 0x69,
0x74, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61,
0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61,
0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4e, 0x0a, 0x0d, 0x47, 0x65, 0x6e,
0x65, 0x72, 0x69, 0x63, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x73, 0x65,
0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x44,
0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x06, 0xb8, 0xb7, 0x8b, 0xa4, 0x02,
0x01, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x65, 0x0a, 0x0f, 0x53, 0x64, 0x73,
0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x12, 0x3e, 0x0a, 0x0a, 0x73, 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x73, 0x64, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x22, 0xfa, 0x02, 0x0a, 0x06, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
0x4c, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x54, 0x6c, 0x73,
0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x74,
0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x59, 0x0a,
0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x5f,
0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x54,
0x6c, 0x73, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4b,
0x65, 0x79, 0x73, 0x48, 0x00, 0x52, 0x11, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x69,
0x63, 0x6b, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x60, 0x0a, 0x12, 0x76, 0x61, 0x6c, 0x69,
0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x49, 0x0a, 0x0e, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76,
0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x53, 0x65,
0x63, 0x72, 0x65, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x53,
0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x42, 0x69, 0x0a,
0x1f, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68,
0x42, 0x0b, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xf2,
0x98, 0xfe, 0x8f, 0x05, 0x2b, 0x12, 0x29, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72,
0x74, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2e, 0x74, 0x6c, 0x73, 0x2e, 0x76, 0x33,
0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_auth_secret_proto_rawDescOnce sync.Once
file_envoy_api_v2_auth_secret_proto_rawDescData = file_envoy_api_v2_auth_secret_proto_rawDesc
)
func file_envoy_api_v2_auth_secret_proto_rawDescGZIP() []byte {
file_envoy_api_v2_auth_secret_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_auth_secret_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_auth_secret_proto_rawDescData)
})
return file_envoy_api_v2_auth_secret_proto_rawDescData
}
var file_envoy_api_v2_auth_secret_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
var file_envoy_api_v2_auth_secret_proto_goTypes = []interface{}{
(*GenericSecret)(nil), // 0: envoy.api.v2.auth.GenericSecret
(*SdsSecretConfig)(nil), // 1: envoy.api.v2.auth.SdsSecretConfig
(*Secret)(nil), // 2: envoy.api.v2.auth.Secret
(*core.DataSource)(nil), // 3: envoy.api.v2.core.DataSource
(*core.ConfigSource)(nil), // 4: envoy.api.v2.core.ConfigSource
(*TlsCertificate)(nil), // 5: envoy.api.v2.auth.TlsCertificate
(*TlsSessionTicketKeys)(nil), // 6: envoy.api.v2.auth.TlsSessionTicketKeys
(*CertificateValidationContext)(nil), // 7: envoy.api.v2.auth.CertificateValidationContext
}
var file_envoy_api_v2_auth_secret_proto_depIdxs = []int32{
3, // 0: envoy.api.v2.auth.GenericSecret.secret:type_name -> envoy.api.v2.core.DataSource
4, // 1: envoy.api.v2.auth.SdsSecretConfig.sds_config:type_name -> envoy.api.v2.core.ConfigSource
5, // 2: envoy.api.v2.auth.Secret.tls_certificate:type_name -> envoy.api.v2.auth.TlsCertificate
6, // 3: envoy.api.v2.auth.Secret.session_ticket_keys:type_name -> envoy.api.v2.auth.TlsSessionTicketKeys
7, // 4: envoy.api.v2.auth.Secret.validation_context:type_name -> envoy.api.v2.auth.CertificateValidationContext
0, // 5: envoy.api.v2.auth.Secret.generic_secret:type_name -> envoy.api.v2.auth.GenericSecret
6, // [6:6] is the sub-list for method output_type
6, // [6:6] is the sub-list for method input_type
6, // [6:6] is the sub-list for extension type_name
6, // [6:6] is the sub-list for extension extendee
0, // [0:6] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_auth_secret_proto_init() }
func file_envoy_api_v2_auth_secret_proto_init() {
if File_envoy_api_v2_auth_secret_proto != nil {
return
}
file_envoy_api_v2_auth_common_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_auth_secret_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GenericSecret); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_auth_secret_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SdsSecretConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_auth_secret_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Secret); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_envoy_api_v2_auth_secret_proto_msgTypes[2].OneofWrappers = []interface{}{
(*Secret_TlsCertificate)(nil),
(*Secret_SessionTicketKeys)(nil),
(*Secret_ValidationContext)(nil),
(*Secret_GenericSecret)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_auth_secret_proto_rawDesc,
NumEnums: 0,
NumMessages: 3,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_auth_secret_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_auth_secret_proto_depIdxs,
MessageInfos: file_envoy_api_v2_auth_secret_proto_msgTypes,
}.Build()
File_envoy_api_v2_auth_secret_proto = out.File
file_envoy_api_v2_auth_secret_proto_rawDesc = nil
file_envoy_api_v2_auth_secret_proto_goTypes = nil
file_envoy_api_v2_auth_secret_proto_depIdxs = nil
}

View file

@ -0,0 +1,304 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/auth/secret.proto
package envoy_api_v2_auth
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on GenericSecret with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *GenericSecret) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetSecret()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return GenericSecretValidationError{
field: "Secret",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// GenericSecretValidationError is the validation error returned by
// GenericSecret.Validate if the designated constraints aren't met.
type GenericSecretValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e GenericSecretValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e GenericSecretValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e GenericSecretValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e GenericSecretValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e GenericSecretValidationError) ErrorName() string { return "GenericSecretValidationError" }
// Error satisfies the builtin error interface
func (e GenericSecretValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sGenericSecret.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = GenericSecretValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = GenericSecretValidationError{}
// Validate checks the field values on SdsSecretConfig with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *SdsSecretConfig) Validate() error {
if m == nil {
return nil
}
// no validation rules for Name
if v, ok := interface{}(m.GetSdsConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return SdsSecretConfigValidationError{
field: "SdsConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// SdsSecretConfigValidationError is the validation error returned by
// SdsSecretConfig.Validate if the designated constraints aren't met.
type SdsSecretConfigValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e SdsSecretConfigValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e SdsSecretConfigValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e SdsSecretConfigValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e SdsSecretConfigValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e SdsSecretConfigValidationError) ErrorName() string { return "SdsSecretConfigValidationError" }
// Error satisfies the builtin error interface
func (e SdsSecretConfigValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sSdsSecretConfig.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = SdsSecretConfigValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = SdsSecretConfigValidationError{}
// Validate checks the field values on Secret with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Secret) Validate() error {
if m == nil {
return nil
}
// no validation rules for Name
switch m.Type.(type) {
case *Secret_TlsCertificate:
if v, ok := interface{}(m.GetTlsCertificate()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return SecretValidationError{
field: "TlsCertificate",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *Secret_SessionTicketKeys:
if v, ok := interface{}(m.GetSessionTicketKeys()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return SecretValidationError{
field: "SessionTicketKeys",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *Secret_ValidationContext:
if v, ok := interface{}(m.GetValidationContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return SecretValidationError{
field: "ValidationContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *Secret_GenericSecret:
if v, ok := interface{}(m.GetGenericSecret()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return SecretValidationError{
field: "GenericSecret",
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// SecretValidationError is the validation error returned by Secret.Validate if
// the designated constraints aren't met.
type SecretValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e SecretValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e SecretValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e SecretValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e SecretValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e SecretValidationError) ErrorName() string { return "SecretValidationError" }
// Error satisfies the builtin error interface
func (e SecretValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sSecret.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = SecretValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = SecretValidationError{}

View file

@ -0,0 +1,766 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/auth/tls.proto
package envoy_api_v2_auth
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
duration "github.com/golang/protobuf/ptypes/duration"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type UpstreamTlsContext struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Common TLS context settings.
//
// .. attention::
//
// Server certificate verification is not enabled by default. Configure
// :ref:`trusted_ca<envoy_api_field_auth.CertificateValidationContext.trusted_ca>` to enable
// verification.
CommonTlsContext *CommonTlsContext `protobuf:"bytes,1,opt,name=common_tls_context,json=commonTlsContext,proto3" json:"common_tls_context,omitempty"`
// SNI string to use when creating TLS backend connections.
Sni string `protobuf:"bytes,2,opt,name=sni,proto3" json:"sni,omitempty"`
// If true, server-initiated TLS renegotiation will be allowed.
//
// .. attention::
//
// TLS renegotiation is considered insecure and shouldn't be used unless absolutely necessary.
AllowRenegotiation bool `protobuf:"varint,3,opt,name=allow_renegotiation,json=allowRenegotiation,proto3" json:"allow_renegotiation,omitempty"`
// Maximum number of session keys (Pre-Shared Keys for TLSv1.3+, Session IDs and Session Tickets
// for TLSv1.2 and older) to store for the purpose of session resumption.
//
// Defaults to 1, setting this to 0 disables session resumption.
MaxSessionKeys *wrappers.UInt32Value `protobuf:"bytes,4,opt,name=max_session_keys,json=maxSessionKeys,proto3" json:"max_session_keys,omitempty"`
}
func (x *UpstreamTlsContext) Reset() {
*x = UpstreamTlsContext{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpstreamTlsContext) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpstreamTlsContext) ProtoMessage() {}
func (x *UpstreamTlsContext) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpstreamTlsContext.ProtoReflect.Descriptor instead.
func (*UpstreamTlsContext) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_tls_proto_rawDescGZIP(), []int{0}
}
func (x *UpstreamTlsContext) GetCommonTlsContext() *CommonTlsContext {
if x != nil {
return x.CommonTlsContext
}
return nil
}
func (x *UpstreamTlsContext) GetSni() string {
if x != nil {
return x.Sni
}
return ""
}
func (x *UpstreamTlsContext) GetAllowRenegotiation() bool {
if x != nil {
return x.AllowRenegotiation
}
return false
}
func (x *UpstreamTlsContext) GetMaxSessionKeys() *wrappers.UInt32Value {
if x != nil {
return x.MaxSessionKeys
}
return nil
}
// [#next-free-field: 8]
type DownstreamTlsContext struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Common TLS context settings.
CommonTlsContext *CommonTlsContext `protobuf:"bytes,1,opt,name=common_tls_context,json=commonTlsContext,proto3" json:"common_tls_context,omitempty"`
// If specified, Envoy will reject connections without a valid client
// certificate.
RequireClientCertificate *wrappers.BoolValue `protobuf:"bytes,2,opt,name=require_client_certificate,json=requireClientCertificate,proto3" json:"require_client_certificate,omitempty"`
// If specified, Envoy will reject connections without a valid and matching SNI.
// [#not-implemented-hide:]
RequireSni *wrappers.BoolValue `protobuf:"bytes,3,opt,name=require_sni,json=requireSni,proto3" json:"require_sni,omitempty"`
// Types that are assignable to SessionTicketKeysType:
// *DownstreamTlsContext_SessionTicketKeys
// *DownstreamTlsContext_SessionTicketKeysSdsSecretConfig
// *DownstreamTlsContext_DisableStatelessSessionResumption
SessionTicketKeysType isDownstreamTlsContext_SessionTicketKeysType `protobuf_oneof:"session_ticket_keys_type"`
// If specified, session_timeout will change maximum lifetime (in seconds) of TLS session
// Currently this value is used as a hint to `TLS session ticket lifetime (for TLSv1.2)
// <https://tools.ietf.org/html/rfc5077#section-5.6>`
// only seconds could be specified (fractional seconds are going to be ignored).
SessionTimeout *duration.Duration `protobuf:"bytes,6,opt,name=session_timeout,json=sessionTimeout,proto3" json:"session_timeout,omitempty"`
}
func (x *DownstreamTlsContext) Reset() {
*x = DownstreamTlsContext{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DownstreamTlsContext) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DownstreamTlsContext) ProtoMessage() {}
func (x *DownstreamTlsContext) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DownstreamTlsContext.ProtoReflect.Descriptor instead.
func (*DownstreamTlsContext) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_tls_proto_rawDescGZIP(), []int{1}
}
func (x *DownstreamTlsContext) GetCommonTlsContext() *CommonTlsContext {
if x != nil {
return x.CommonTlsContext
}
return nil
}
func (x *DownstreamTlsContext) GetRequireClientCertificate() *wrappers.BoolValue {
if x != nil {
return x.RequireClientCertificate
}
return nil
}
func (x *DownstreamTlsContext) GetRequireSni() *wrappers.BoolValue {
if x != nil {
return x.RequireSni
}
return nil
}
func (m *DownstreamTlsContext) GetSessionTicketKeysType() isDownstreamTlsContext_SessionTicketKeysType {
if m != nil {
return m.SessionTicketKeysType
}
return nil
}
func (x *DownstreamTlsContext) GetSessionTicketKeys() *TlsSessionTicketKeys {
if x, ok := x.GetSessionTicketKeysType().(*DownstreamTlsContext_SessionTicketKeys); ok {
return x.SessionTicketKeys
}
return nil
}
func (x *DownstreamTlsContext) GetSessionTicketKeysSdsSecretConfig() *SdsSecretConfig {
if x, ok := x.GetSessionTicketKeysType().(*DownstreamTlsContext_SessionTicketKeysSdsSecretConfig); ok {
return x.SessionTicketKeysSdsSecretConfig
}
return nil
}
func (x *DownstreamTlsContext) GetDisableStatelessSessionResumption() bool {
if x, ok := x.GetSessionTicketKeysType().(*DownstreamTlsContext_DisableStatelessSessionResumption); ok {
return x.DisableStatelessSessionResumption
}
return false
}
func (x *DownstreamTlsContext) GetSessionTimeout() *duration.Duration {
if x != nil {
return x.SessionTimeout
}
return nil
}
type isDownstreamTlsContext_SessionTicketKeysType interface {
isDownstreamTlsContext_SessionTicketKeysType()
}
type DownstreamTlsContext_SessionTicketKeys struct {
// TLS session ticket key settings.
SessionTicketKeys *TlsSessionTicketKeys `protobuf:"bytes,4,opt,name=session_ticket_keys,json=sessionTicketKeys,proto3,oneof"`
}
type DownstreamTlsContext_SessionTicketKeysSdsSecretConfig struct {
// Config for fetching TLS session ticket keys via SDS API.
SessionTicketKeysSdsSecretConfig *SdsSecretConfig `protobuf:"bytes,5,opt,name=session_ticket_keys_sds_secret_config,json=sessionTicketKeysSdsSecretConfig,proto3,oneof"`
}
type DownstreamTlsContext_DisableStatelessSessionResumption struct {
// Config for controlling stateless TLS session resumption: setting this to true will cause the TLS
// server to not issue TLS session tickets for the purposes of stateless TLS session resumption.
// If set to false, the TLS server will issue TLS session tickets and encrypt/decrypt them using
// the keys specified through either :ref:`session_ticket_keys <envoy_api_field_auth.DownstreamTlsContext.session_ticket_keys>`
// or :ref:`session_ticket_keys_sds_secret_config <envoy_api_field_auth.DownstreamTlsContext.session_ticket_keys_sds_secret_config>`.
// If this config is set to false and no keys are explicitly configured, the TLS server will issue
// TLS session tickets and encrypt/decrypt them using an internally-generated and managed key, with the
// implication that sessions cannot be resumed across hot restarts or on different hosts.
DisableStatelessSessionResumption bool `protobuf:"varint,7,opt,name=disable_stateless_session_resumption,json=disableStatelessSessionResumption,proto3,oneof"`
}
func (*DownstreamTlsContext_SessionTicketKeys) isDownstreamTlsContext_SessionTicketKeysType() {}
func (*DownstreamTlsContext_SessionTicketKeysSdsSecretConfig) isDownstreamTlsContext_SessionTicketKeysType() {
}
func (*DownstreamTlsContext_DisableStatelessSessionResumption) isDownstreamTlsContext_SessionTicketKeysType() {
}
// TLS context shared by both client and server TLS contexts.
// [#next-free-field: 9]
type CommonTlsContext struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// TLS protocol versions, cipher suites etc.
TlsParams *TlsParameters `protobuf:"bytes,1,opt,name=tls_params,json=tlsParams,proto3" json:"tls_params,omitempty"`
// :ref:`Multiple TLS certificates <arch_overview_ssl_cert_select>` can be associated with the
// same context to allow both RSA and ECDSA certificates.
//
// Only a single TLS certificate is supported in client contexts. In server contexts, the first
// RSA certificate is used for clients that only support RSA and the first ECDSA certificate is
// used for clients that support ECDSA.
TlsCertificates []*TlsCertificate `protobuf:"bytes,2,rep,name=tls_certificates,json=tlsCertificates,proto3" json:"tls_certificates,omitempty"`
// Configs for fetching TLS certificates via SDS API.
TlsCertificateSdsSecretConfigs []*SdsSecretConfig `protobuf:"bytes,6,rep,name=tls_certificate_sds_secret_configs,json=tlsCertificateSdsSecretConfigs,proto3" json:"tls_certificate_sds_secret_configs,omitempty"`
// Types that are assignable to ValidationContextType:
// *CommonTlsContext_ValidationContext
// *CommonTlsContext_ValidationContextSdsSecretConfig
// *CommonTlsContext_CombinedValidationContext
ValidationContextType isCommonTlsContext_ValidationContextType `protobuf_oneof:"validation_context_type"`
// Supplies the list of ALPN protocols that the listener should expose. In
// practice this is likely to be set to one of two values (see the
// :ref:`codec_type
// <envoy_api_field_config.filter.network.http_connection_manager.v2.HttpConnectionManager.codec_type>`
// parameter in the HTTP connection manager for more information):
//
// * "h2,http/1.1" If the listener is going to support both HTTP/2 and HTTP/1.1.
// * "http/1.1" If the listener is only going to support HTTP/1.1.
//
// There is no default for this parameter. If empty, Envoy will not expose ALPN.
AlpnProtocols []string `protobuf:"bytes,4,rep,name=alpn_protocols,json=alpnProtocols,proto3" json:"alpn_protocols,omitempty"`
}
func (x *CommonTlsContext) Reset() {
*x = CommonTlsContext{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CommonTlsContext) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CommonTlsContext) ProtoMessage() {}
func (x *CommonTlsContext) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CommonTlsContext.ProtoReflect.Descriptor instead.
func (*CommonTlsContext) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_tls_proto_rawDescGZIP(), []int{2}
}
func (x *CommonTlsContext) GetTlsParams() *TlsParameters {
if x != nil {
return x.TlsParams
}
return nil
}
func (x *CommonTlsContext) GetTlsCertificates() []*TlsCertificate {
if x != nil {
return x.TlsCertificates
}
return nil
}
func (x *CommonTlsContext) GetTlsCertificateSdsSecretConfigs() []*SdsSecretConfig {
if x != nil {
return x.TlsCertificateSdsSecretConfigs
}
return nil
}
func (m *CommonTlsContext) GetValidationContextType() isCommonTlsContext_ValidationContextType {
if m != nil {
return m.ValidationContextType
}
return nil
}
func (x *CommonTlsContext) GetValidationContext() *CertificateValidationContext {
if x, ok := x.GetValidationContextType().(*CommonTlsContext_ValidationContext); ok {
return x.ValidationContext
}
return nil
}
func (x *CommonTlsContext) GetValidationContextSdsSecretConfig() *SdsSecretConfig {
if x, ok := x.GetValidationContextType().(*CommonTlsContext_ValidationContextSdsSecretConfig); ok {
return x.ValidationContextSdsSecretConfig
}
return nil
}
func (x *CommonTlsContext) GetCombinedValidationContext() *CommonTlsContext_CombinedCertificateValidationContext {
if x, ok := x.GetValidationContextType().(*CommonTlsContext_CombinedValidationContext); ok {
return x.CombinedValidationContext
}
return nil
}
func (x *CommonTlsContext) GetAlpnProtocols() []string {
if x != nil {
return x.AlpnProtocols
}
return nil
}
type isCommonTlsContext_ValidationContextType interface {
isCommonTlsContext_ValidationContextType()
}
type CommonTlsContext_ValidationContext struct {
// How to validate peer certificates.
ValidationContext *CertificateValidationContext `protobuf:"bytes,3,opt,name=validation_context,json=validationContext,proto3,oneof"`
}
type CommonTlsContext_ValidationContextSdsSecretConfig struct {
// Config for fetching validation context via SDS API.
ValidationContextSdsSecretConfig *SdsSecretConfig `protobuf:"bytes,7,opt,name=validation_context_sds_secret_config,json=validationContextSdsSecretConfig,proto3,oneof"`
}
type CommonTlsContext_CombinedValidationContext struct {
// Combined certificate validation context holds a default CertificateValidationContext
// and SDS config. When SDS server returns dynamic CertificateValidationContext, both dynamic
// and default CertificateValidationContext are merged into a new CertificateValidationContext
// for validation. This merge is done by Message::MergeFrom(), so dynamic
// CertificateValidationContext overwrites singular fields in default
// CertificateValidationContext, and concatenates repeated fields to default
// CertificateValidationContext, and logical OR is applied to boolean fields.
CombinedValidationContext *CommonTlsContext_CombinedCertificateValidationContext `protobuf:"bytes,8,opt,name=combined_validation_context,json=combinedValidationContext,proto3,oneof"`
}
func (*CommonTlsContext_ValidationContext) isCommonTlsContext_ValidationContextType() {}
func (*CommonTlsContext_ValidationContextSdsSecretConfig) isCommonTlsContext_ValidationContextType() {
}
func (*CommonTlsContext_CombinedValidationContext) isCommonTlsContext_ValidationContextType() {}
type CommonTlsContext_CombinedCertificateValidationContext struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// How to validate peer certificates.
DefaultValidationContext *CertificateValidationContext `protobuf:"bytes,1,opt,name=default_validation_context,json=defaultValidationContext,proto3" json:"default_validation_context,omitempty"`
// Config for fetching validation context via SDS API.
ValidationContextSdsSecretConfig *SdsSecretConfig `protobuf:"bytes,2,opt,name=validation_context_sds_secret_config,json=validationContextSdsSecretConfig,proto3" json:"validation_context_sds_secret_config,omitempty"`
}
func (x *CommonTlsContext_CombinedCertificateValidationContext) Reset() {
*x = CommonTlsContext_CombinedCertificateValidationContext{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CommonTlsContext_CombinedCertificateValidationContext) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CommonTlsContext_CombinedCertificateValidationContext) ProtoMessage() {}
func (x *CommonTlsContext_CombinedCertificateValidationContext) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_auth_tls_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CommonTlsContext_CombinedCertificateValidationContext.ProtoReflect.Descriptor instead.
func (*CommonTlsContext_CombinedCertificateValidationContext) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_auth_tls_proto_rawDescGZIP(), []int{2, 0}
}
func (x *CommonTlsContext_CombinedCertificateValidationContext) GetDefaultValidationContext() *CertificateValidationContext {
if x != nil {
return x.DefaultValidationContext
}
return nil
}
func (x *CommonTlsContext_CombinedCertificateValidationContext) GetValidationContextSdsSecretConfig() *SdsSecretConfig {
if x != nil {
return x.ValidationContextSdsSecretConfig
}
return nil
}
var File_envoy_api_v2_auth_tls_proto protoreflect.FileDescriptor
var file_envoy_api_v2_auth_tls_proto_rawDesc = []byte{
0x0a, 0x1b, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x61,
0x75, 0x74, 0x68, 0x2f, 0x74, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68,
0x1a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x61,
0x75, 0x74, 0x68, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x61,
0x75, 0x74, 0x68, 0x2f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfc, 0x01, 0x0a, 0x12, 0x55, 0x70, 0x73,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12,
0x51, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x52, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65,
0x78, 0x74, 0x12, 0x1a, 0x0a, 0x03, 0x73, 0x6e, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
0x08, 0xfa, 0x42, 0x05, 0x72, 0x03, 0x28, 0xff, 0x01, 0x52, 0x03, 0x73, 0x6e, 0x69, 0x12, 0x2f,
0x0a, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x6c, 0x6c,
0x6f, 0x77, 0x52, 0x65, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x46, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6b,
0x65, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74,
0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x73, 0x73,
0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x22, 0x97, 0x05, 0x0a, 0x14, 0x44, 0x6f, 0x77, 0x6e,
0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x12, 0x51, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x74, 0x6c, 0x73, 0x5f, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68,
0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
0x74, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x12, 0x58, 0x0a, 0x1a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x63,
0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x52, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x6c, 0x69, 0x65,
0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a,
0x0b, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x6e, 0x69, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a,
0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x53, 0x6e, 0x69, 0x12, 0x59, 0x0a, 0x13, 0x73, 0x65,
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79,
0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x54, 0x6c, 0x73, 0x53,
0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73,
0x48, 0x00, 0x52, 0x11, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x65,
0x74, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x75, 0x0a, 0x25, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x5f, 0x73, 0x64, 0x73,
0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x53, 0x64, 0x73, 0x53, 0x65, 0x63, 0x72,
0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x20, 0x73, 0x65, 0x73, 0x73,
0x69, 0x6f, 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x53, 0x64, 0x73,
0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x51, 0x0a, 0x24,
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73,
0x73, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x21, 0x64, 0x69,
0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x65,
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x54, 0x0a, 0x0f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f,
0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0xaa, 0x01, 0x0a, 0x1a, 0x06, 0x08, 0x80, 0x80,
0x80, 0x80, 0x10, 0x32, 0x00, 0x52, 0x0e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x69,
0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42, 0x1a, 0x0a, 0x18, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x5f, 0x74, 0x79, 0x70,
0x65, 0x22, 0xe8, 0x07, 0x0a, 0x10, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x6c, 0x73, 0x43,
0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x3f, 0x0a, 0x0a, 0x74, 0x6c, 0x73, 0x5f, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x54,
0x6c, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x09, 0x74, 0x6c,
0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x4c, 0x0a, 0x10, 0x74, 0x6c, 0x73, 0x5f, 0x63,
0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32,
0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x54, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x65, 0x52, 0x0f, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x65, 0x73, 0x12, 0x78, 0x0a, 0x22, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72,
0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x64, 0x73, 0x5f, 0x73, 0x65, 0x63,
0x72, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32,
0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x53, 0x64, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x10, 0x01, 0x52,
0x1e, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53,
0x64, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12,
0x60, 0x0a, 0x12, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x11,
0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
0x74, 0x12, 0x74, 0x0a, 0x24, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x64, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x72,
0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61,
0x75, 0x74, 0x68, 0x2e, 0x53, 0x64, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x64, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65,
0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x8a, 0x01, 0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x62,
0x69, 0x6e, 0x65, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74,
0x68, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65,
0x78, 0x74, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x64, 0x43, 0x65, 0x72, 0x74, 0x69,
0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x62, 0x69,
0x6e, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
0x74, 0x65, 0x78, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6c, 0x70, 0x6e, 0x5f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c,
0x70, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x1a, 0x9d, 0x02, 0x0a, 0x24,
0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x64, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
0x74, 0x65, 0x78, 0x74, 0x12, 0x77, 0x0a, 0x1a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f,
0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x43, 0x65, 0x72,
0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01,
0x02, 0x10, 0x01, 0x52, 0x18, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x69,
0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x7c, 0x0a,
0x24, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x5f, 0x73, 0x64, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
0x53, 0x64, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42,
0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x64, 0x73, 0x53,
0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x19, 0x0a, 0x17, 0x76,
0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x42, 0x66, 0x0a, 0x1f,
0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x42,
0x08, 0x54, 0x6c, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xf2, 0x98, 0xfe, 0x8f, 0x05,
0x2b, 0x12, 0x29, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x6f,
0x63, 0x6b, 0x65, 0x74, 0x73, 0x2e, 0x74, 0x6c, 0x73, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1,
0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_auth_tls_proto_rawDescOnce sync.Once
file_envoy_api_v2_auth_tls_proto_rawDescData = file_envoy_api_v2_auth_tls_proto_rawDesc
)
func file_envoy_api_v2_auth_tls_proto_rawDescGZIP() []byte {
file_envoy_api_v2_auth_tls_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_auth_tls_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_auth_tls_proto_rawDescData)
})
return file_envoy_api_v2_auth_tls_proto_rawDescData
}
var file_envoy_api_v2_auth_tls_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_envoy_api_v2_auth_tls_proto_goTypes = []interface{}{
(*UpstreamTlsContext)(nil), // 0: envoy.api.v2.auth.UpstreamTlsContext
(*DownstreamTlsContext)(nil), // 1: envoy.api.v2.auth.DownstreamTlsContext
(*CommonTlsContext)(nil), // 2: envoy.api.v2.auth.CommonTlsContext
(*CommonTlsContext_CombinedCertificateValidationContext)(nil), // 3: envoy.api.v2.auth.CommonTlsContext.CombinedCertificateValidationContext
(*wrappers.UInt32Value)(nil), // 4: google.protobuf.UInt32Value
(*wrappers.BoolValue)(nil), // 5: google.protobuf.BoolValue
(*TlsSessionTicketKeys)(nil), // 6: envoy.api.v2.auth.TlsSessionTicketKeys
(*SdsSecretConfig)(nil), // 7: envoy.api.v2.auth.SdsSecretConfig
(*duration.Duration)(nil), // 8: google.protobuf.Duration
(*TlsParameters)(nil), // 9: envoy.api.v2.auth.TlsParameters
(*TlsCertificate)(nil), // 10: envoy.api.v2.auth.TlsCertificate
(*CertificateValidationContext)(nil), // 11: envoy.api.v2.auth.CertificateValidationContext
}
var file_envoy_api_v2_auth_tls_proto_depIdxs = []int32{
2, // 0: envoy.api.v2.auth.UpstreamTlsContext.common_tls_context:type_name -> envoy.api.v2.auth.CommonTlsContext
4, // 1: envoy.api.v2.auth.UpstreamTlsContext.max_session_keys:type_name -> google.protobuf.UInt32Value
2, // 2: envoy.api.v2.auth.DownstreamTlsContext.common_tls_context:type_name -> envoy.api.v2.auth.CommonTlsContext
5, // 3: envoy.api.v2.auth.DownstreamTlsContext.require_client_certificate:type_name -> google.protobuf.BoolValue
5, // 4: envoy.api.v2.auth.DownstreamTlsContext.require_sni:type_name -> google.protobuf.BoolValue
6, // 5: envoy.api.v2.auth.DownstreamTlsContext.session_ticket_keys:type_name -> envoy.api.v2.auth.TlsSessionTicketKeys
7, // 6: envoy.api.v2.auth.DownstreamTlsContext.session_ticket_keys_sds_secret_config:type_name -> envoy.api.v2.auth.SdsSecretConfig
8, // 7: envoy.api.v2.auth.DownstreamTlsContext.session_timeout:type_name -> google.protobuf.Duration
9, // 8: envoy.api.v2.auth.CommonTlsContext.tls_params:type_name -> envoy.api.v2.auth.TlsParameters
10, // 9: envoy.api.v2.auth.CommonTlsContext.tls_certificates:type_name -> envoy.api.v2.auth.TlsCertificate
7, // 10: envoy.api.v2.auth.CommonTlsContext.tls_certificate_sds_secret_configs:type_name -> envoy.api.v2.auth.SdsSecretConfig
11, // 11: envoy.api.v2.auth.CommonTlsContext.validation_context:type_name -> envoy.api.v2.auth.CertificateValidationContext
7, // 12: envoy.api.v2.auth.CommonTlsContext.validation_context_sds_secret_config:type_name -> envoy.api.v2.auth.SdsSecretConfig
3, // 13: envoy.api.v2.auth.CommonTlsContext.combined_validation_context:type_name -> envoy.api.v2.auth.CommonTlsContext.CombinedCertificateValidationContext
11, // 14: envoy.api.v2.auth.CommonTlsContext.CombinedCertificateValidationContext.default_validation_context:type_name -> envoy.api.v2.auth.CertificateValidationContext
7, // 15: envoy.api.v2.auth.CommonTlsContext.CombinedCertificateValidationContext.validation_context_sds_secret_config:type_name -> envoy.api.v2.auth.SdsSecretConfig
16, // [16:16] is the sub-list for method output_type
16, // [16:16] is the sub-list for method input_type
16, // [16:16] is the sub-list for extension type_name
16, // [16:16] is the sub-list for extension extendee
0, // [0:16] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_auth_tls_proto_init() }
func file_envoy_api_v2_auth_tls_proto_init() {
if File_envoy_api_v2_auth_tls_proto != nil {
return
}
file_envoy_api_v2_auth_common_proto_init()
file_envoy_api_v2_auth_secret_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_auth_tls_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpstreamTlsContext); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_auth_tls_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownstreamTlsContext); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_auth_tls_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CommonTlsContext); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_auth_tls_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CommonTlsContext_CombinedCertificateValidationContext); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_envoy_api_v2_auth_tls_proto_msgTypes[1].OneofWrappers = []interface{}{
(*DownstreamTlsContext_SessionTicketKeys)(nil),
(*DownstreamTlsContext_SessionTicketKeysSdsSecretConfig)(nil),
(*DownstreamTlsContext_DisableStatelessSessionResumption)(nil),
}
file_envoy_api_v2_auth_tls_proto_msgTypes[2].OneofWrappers = []interface{}{
(*CommonTlsContext_ValidationContext)(nil),
(*CommonTlsContext_ValidationContextSdsSecretConfig)(nil),
(*CommonTlsContext_CombinedValidationContext)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_auth_tls_proto_rawDesc,
NumEnums: 0,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_auth_tls_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_auth_tls_proto_depIdxs,
MessageInfos: file_envoy_api_v2_auth_tls_proto_msgTypes,
}.Build()
File_envoy_api_v2_auth_tls_proto = out.File
file_envoy_api_v2_auth_tls_proto_rawDesc = nil
file_envoy_api_v2_auth_tls_proto_goTypes = nil
file_envoy_api_v2_auth_tls_proto_depIdxs = nil
}

View file

@ -0,0 +1,544 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/auth/tls.proto
package envoy_api_v2_auth
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on UpstreamTlsContext with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *UpstreamTlsContext) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetCommonTlsContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return UpstreamTlsContextValidationError{
field: "CommonTlsContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
if len(m.GetSni()) > 255 {
return UpstreamTlsContextValidationError{
field: "Sni",
reason: "value length must be at most 255 bytes",
}
}
// no validation rules for AllowRenegotiation
if v, ok := interface{}(m.GetMaxSessionKeys()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return UpstreamTlsContextValidationError{
field: "MaxSessionKeys",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// UpstreamTlsContextValidationError is the validation error returned by
// UpstreamTlsContext.Validate if the designated constraints aren't met.
type UpstreamTlsContextValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e UpstreamTlsContextValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e UpstreamTlsContextValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e UpstreamTlsContextValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e UpstreamTlsContextValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e UpstreamTlsContextValidationError) ErrorName() string {
return "UpstreamTlsContextValidationError"
}
// Error satisfies the builtin error interface
func (e UpstreamTlsContextValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sUpstreamTlsContext.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = UpstreamTlsContextValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = UpstreamTlsContextValidationError{}
// Validate checks the field values on DownstreamTlsContext with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *DownstreamTlsContext) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetCommonTlsContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return DownstreamTlsContextValidationError{
field: "CommonTlsContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetRequireClientCertificate()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return DownstreamTlsContextValidationError{
field: "RequireClientCertificate",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetRequireSni()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return DownstreamTlsContextValidationError{
field: "RequireSni",
reason: "embedded message failed validation",
cause: err,
}
}
}
if d := m.GetSessionTimeout(); d != nil {
dur, err := ptypes.Duration(d)
if err != nil {
return DownstreamTlsContextValidationError{
field: "SessionTimeout",
reason: "value is not a valid duration",
cause: err,
}
}
lt := time.Duration(4294967296*time.Second + 0*time.Nanosecond)
gte := time.Duration(0*time.Second + 0*time.Nanosecond)
if dur < gte || dur >= lt {
return DownstreamTlsContextValidationError{
field: "SessionTimeout",
reason: "value must be inside range [0s, 1193046h28m16s)",
}
}
}
switch m.SessionTicketKeysType.(type) {
case *DownstreamTlsContext_SessionTicketKeys:
if v, ok := interface{}(m.GetSessionTicketKeys()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return DownstreamTlsContextValidationError{
field: "SessionTicketKeys",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *DownstreamTlsContext_SessionTicketKeysSdsSecretConfig:
if v, ok := interface{}(m.GetSessionTicketKeysSdsSecretConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return DownstreamTlsContextValidationError{
field: "SessionTicketKeysSdsSecretConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *DownstreamTlsContext_DisableStatelessSessionResumption:
// no validation rules for DisableStatelessSessionResumption
}
return nil
}
// DownstreamTlsContextValidationError is the validation error returned by
// DownstreamTlsContext.Validate if the designated constraints aren't met.
type DownstreamTlsContextValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e DownstreamTlsContextValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e DownstreamTlsContextValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e DownstreamTlsContextValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e DownstreamTlsContextValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e DownstreamTlsContextValidationError) ErrorName() string {
return "DownstreamTlsContextValidationError"
}
// Error satisfies the builtin error interface
func (e DownstreamTlsContextValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sDownstreamTlsContext.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = DownstreamTlsContextValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = DownstreamTlsContextValidationError{}
// Validate checks the field values on CommonTlsContext with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *CommonTlsContext) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetTlsParams()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContextValidationError{
field: "TlsParams",
reason: "embedded message failed validation",
cause: err,
}
}
}
for idx, item := range m.GetTlsCertificates() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContextValidationError{
field: fmt.Sprintf("TlsCertificates[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
if len(m.GetTlsCertificateSdsSecretConfigs()) > 1 {
return CommonTlsContextValidationError{
field: "TlsCertificateSdsSecretConfigs",
reason: "value must contain no more than 1 item(s)",
}
}
for idx, item := range m.GetTlsCertificateSdsSecretConfigs() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContextValidationError{
field: fmt.Sprintf("TlsCertificateSdsSecretConfigs[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
switch m.ValidationContextType.(type) {
case *CommonTlsContext_ValidationContext:
if v, ok := interface{}(m.GetValidationContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContextValidationError{
field: "ValidationContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *CommonTlsContext_ValidationContextSdsSecretConfig:
if v, ok := interface{}(m.GetValidationContextSdsSecretConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContextValidationError{
field: "ValidationContextSdsSecretConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *CommonTlsContext_CombinedValidationContext:
if v, ok := interface{}(m.GetCombinedValidationContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContextValidationError{
field: "CombinedValidationContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// CommonTlsContextValidationError is the validation error returned by
// CommonTlsContext.Validate if the designated constraints aren't met.
type CommonTlsContextValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CommonTlsContextValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CommonTlsContextValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CommonTlsContextValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CommonTlsContextValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CommonTlsContextValidationError) ErrorName() string { return "CommonTlsContextValidationError" }
// Error satisfies the builtin error interface
func (e CommonTlsContextValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCommonTlsContext.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CommonTlsContextValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CommonTlsContextValidationError{}
// Validate checks the field values on
// CommonTlsContext_CombinedCertificateValidationContext with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CommonTlsContext_CombinedCertificateValidationContext) Validate() error {
if m == nil {
return nil
}
if m.GetDefaultValidationContext() == nil {
return CommonTlsContext_CombinedCertificateValidationContextValidationError{
field: "DefaultValidationContext",
reason: "value is required",
}
}
if v, ok := interface{}(m.GetDefaultValidationContext()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContext_CombinedCertificateValidationContextValidationError{
field: "DefaultValidationContext",
reason: "embedded message failed validation",
cause: err,
}
}
}
if m.GetValidationContextSdsSecretConfig() == nil {
return CommonTlsContext_CombinedCertificateValidationContextValidationError{
field: "ValidationContextSdsSecretConfig",
reason: "value is required",
}
}
if v, ok := interface{}(m.GetValidationContextSdsSecretConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CommonTlsContext_CombinedCertificateValidationContextValidationError{
field: "ValidationContextSdsSecretConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// CommonTlsContext_CombinedCertificateValidationContextValidationError is the
// validation error returned by
// CommonTlsContext_CombinedCertificateValidationContext.Validate if the
// designated constraints aren't met.
type CommonTlsContext_CombinedCertificateValidationContextValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CommonTlsContext_CombinedCertificateValidationContextValidationError) Field() string {
return e.field
}
// Reason function returns reason value.
func (e CommonTlsContext_CombinedCertificateValidationContextValidationError) Reason() string {
return e.reason
}
// Cause function returns cause value.
func (e CommonTlsContext_CombinedCertificateValidationContextValidationError) Cause() error {
return e.cause
}
// Key function returns key value.
func (e CommonTlsContext_CombinedCertificateValidationContextValidationError) Key() bool {
return e.key
}
// ErrorName returns error name.
func (e CommonTlsContext_CombinedCertificateValidationContextValidationError) ErrorName() string {
return "CommonTlsContext_CombinedCertificateValidationContextValidationError"
}
// Error satisfies the builtin error interface
func (e CommonTlsContext_CombinedCertificateValidationContextValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCommonTlsContext_CombinedCertificateValidationContext.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CommonTlsContext_CombinedCertificateValidationContextValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CommonTlsContext_CombinedCertificateValidationContextValidationError{}

View file

@ -0,0 +1,414 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/cds.proto
package envoy_api_v2
import (
context "context"
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/go-control-plane/envoy/annotations"
proto "github.com/golang/protobuf/proto"
_ "google.golang.org/genproto/googleapis/api/annotations"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// [#not-implemented-hide:] Not configuration. Workaround c++ protobuf issue with importing
// services: https://github.com/google/protobuf/issues/4221 and protoxform to upgrade the file.
type CdsDummy struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CdsDummy) Reset() {
*x = CdsDummy{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_cds_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CdsDummy) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CdsDummy) ProtoMessage() {}
func (x *CdsDummy) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_cds_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CdsDummy.ProtoReflect.Descriptor instead.
func (*CdsDummy) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_cds_proto_rawDescGZIP(), []int{0}
}
var File_envoy_api_v2_cds_proto protoreflect.FileDescriptor
var file_envoy_api_v2_cds_proto_rawDesc = []byte{
0x0a, 0x16, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x64, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x1a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x76, 0x32, 0x2f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x1a, 0x20, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76,
0x32, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0x0a, 0x0a, 0x08, 0x43, 0x64, 0x73, 0x44, 0x75, 0x6d, 0x6d, 0x79, 0x32, 0xed, 0x02, 0x0a, 0x17,
0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x57, 0x0a, 0x0e, 0x53, 0x74, 0x72, 0x65, 0x61,
0x6d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1e, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65,
0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65,
0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01,
0x12, 0x60, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x73, 0x12, 0x23, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32,
0x2e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x44, 0x69, 0x73, 0x63, 0x6f,
0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01,
0x30, 0x01, 0x12, 0x79, 0x0a, 0x0d, 0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x75, 0x73, 0x74,
0x65, 0x72, 0x73, 0x12, 0x1e, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x76, 0x32, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x76, 0x32, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x22, 0x16, 0x2f, 0x76,
0x32, 0x2f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x3a, 0x63, 0x6c, 0x75, 0x73,
0x74, 0x65, 0x72, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x03, 0x3a, 0x01, 0x2a, 0x1a, 0x1c, 0x8a,
0xa4, 0x96, 0xf3, 0x07, 0x16, 0x0a, 0x14, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x76, 0x32, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x53, 0x0a, 0x1a, 0x69,
0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x42, 0x08, 0x43, 0x64, 0x73, 0x50, 0x72,
0x6f, 0x74, 0x6f, 0x50, 0x01, 0x88, 0x01, 0x01, 0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x1a, 0x12, 0x18,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x63, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01,
0x50, 0x05, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_cds_proto_rawDescOnce sync.Once
file_envoy_api_v2_cds_proto_rawDescData = file_envoy_api_v2_cds_proto_rawDesc
)
func file_envoy_api_v2_cds_proto_rawDescGZIP() []byte {
file_envoy_api_v2_cds_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_cds_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_cds_proto_rawDescData)
})
return file_envoy_api_v2_cds_proto_rawDescData
}
var file_envoy_api_v2_cds_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_api_v2_cds_proto_goTypes = []interface{}{
(*CdsDummy)(nil), // 0: envoy.api.v2.CdsDummy
(*DiscoveryRequest)(nil), // 1: envoy.api.v2.DiscoveryRequest
(*DeltaDiscoveryRequest)(nil), // 2: envoy.api.v2.DeltaDiscoveryRequest
(*DiscoveryResponse)(nil), // 3: envoy.api.v2.DiscoveryResponse
(*DeltaDiscoveryResponse)(nil), // 4: envoy.api.v2.DeltaDiscoveryResponse
}
var file_envoy_api_v2_cds_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.ClusterDiscoveryService.StreamClusters:input_type -> envoy.api.v2.DiscoveryRequest
2, // 1: envoy.api.v2.ClusterDiscoveryService.DeltaClusters:input_type -> envoy.api.v2.DeltaDiscoveryRequest
1, // 2: envoy.api.v2.ClusterDiscoveryService.FetchClusters:input_type -> envoy.api.v2.DiscoveryRequest
3, // 3: envoy.api.v2.ClusterDiscoveryService.StreamClusters:output_type -> envoy.api.v2.DiscoveryResponse
4, // 4: envoy.api.v2.ClusterDiscoveryService.DeltaClusters:output_type -> envoy.api.v2.DeltaDiscoveryResponse
3, // 5: envoy.api.v2.ClusterDiscoveryService.FetchClusters:output_type -> envoy.api.v2.DiscoveryResponse
3, // [3:6] is the sub-list for method output_type
0, // [0:3] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_cds_proto_init() }
func file_envoy_api_v2_cds_proto_init() {
if File_envoy_api_v2_cds_proto != nil {
return
}
file_envoy_api_v2_discovery_proto_init()
file_envoy_api_v2_cluster_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_cds_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CdsDummy); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_cds_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_envoy_api_v2_cds_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_cds_proto_depIdxs,
MessageInfos: file_envoy_api_v2_cds_proto_msgTypes,
}.Build()
File_envoy_api_v2_cds_proto = out.File
file_envoy_api_v2_cds_proto_rawDesc = nil
file_envoy_api_v2_cds_proto_goTypes = nil
file_envoy_api_v2_cds_proto_depIdxs = nil
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// ClusterDiscoveryServiceClient is the client API for ClusterDiscoveryService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type ClusterDiscoveryServiceClient interface {
StreamClusters(ctx context.Context, opts ...grpc.CallOption) (ClusterDiscoveryService_StreamClustersClient, error)
DeltaClusters(ctx context.Context, opts ...grpc.CallOption) (ClusterDiscoveryService_DeltaClustersClient, error)
FetchClusters(ctx context.Context, in *DiscoveryRequest, opts ...grpc.CallOption) (*DiscoveryResponse, error)
}
type clusterDiscoveryServiceClient struct {
cc grpc.ClientConnInterface
}
func NewClusterDiscoveryServiceClient(cc grpc.ClientConnInterface) ClusterDiscoveryServiceClient {
return &clusterDiscoveryServiceClient{cc}
}
func (c *clusterDiscoveryServiceClient) StreamClusters(ctx context.Context, opts ...grpc.CallOption) (ClusterDiscoveryService_StreamClustersClient, error) {
stream, err := c.cc.NewStream(ctx, &_ClusterDiscoveryService_serviceDesc.Streams[0], "/envoy.api.v2.ClusterDiscoveryService/StreamClusters", opts...)
if err != nil {
return nil, err
}
x := &clusterDiscoveryServiceStreamClustersClient{stream}
return x, nil
}
type ClusterDiscoveryService_StreamClustersClient interface {
Send(*DiscoveryRequest) error
Recv() (*DiscoveryResponse, error)
grpc.ClientStream
}
type clusterDiscoveryServiceStreamClustersClient struct {
grpc.ClientStream
}
func (x *clusterDiscoveryServiceStreamClustersClient) Send(m *DiscoveryRequest) error {
return x.ClientStream.SendMsg(m)
}
func (x *clusterDiscoveryServiceStreamClustersClient) Recv() (*DiscoveryResponse, error) {
m := new(DiscoveryResponse)
if err := x.ClientStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
func (c *clusterDiscoveryServiceClient) DeltaClusters(ctx context.Context, opts ...grpc.CallOption) (ClusterDiscoveryService_DeltaClustersClient, error) {
stream, err := c.cc.NewStream(ctx, &_ClusterDiscoveryService_serviceDesc.Streams[1], "/envoy.api.v2.ClusterDiscoveryService/DeltaClusters", opts...)
if err != nil {
return nil, err
}
x := &clusterDiscoveryServiceDeltaClustersClient{stream}
return x, nil
}
type ClusterDiscoveryService_DeltaClustersClient interface {
Send(*DeltaDiscoveryRequest) error
Recv() (*DeltaDiscoveryResponse, error)
grpc.ClientStream
}
type clusterDiscoveryServiceDeltaClustersClient struct {
grpc.ClientStream
}
func (x *clusterDiscoveryServiceDeltaClustersClient) Send(m *DeltaDiscoveryRequest) error {
return x.ClientStream.SendMsg(m)
}
func (x *clusterDiscoveryServiceDeltaClustersClient) Recv() (*DeltaDiscoveryResponse, error) {
m := new(DeltaDiscoveryResponse)
if err := x.ClientStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
func (c *clusterDiscoveryServiceClient) FetchClusters(ctx context.Context, in *DiscoveryRequest, opts ...grpc.CallOption) (*DiscoveryResponse, error) {
out := new(DiscoveryResponse)
err := c.cc.Invoke(ctx, "/envoy.api.v2.ClusterDiscoveryService/FetchClusters", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ClusterDiscoveryServiceServer is the server API for ClusterDiscoveryService service.
type ClusterDiscoveryServiceServer interface {
StreamClusters(ClusterDiscoveryService_StreamClustersServer) error
DeltaClusters(ClusterDiscoveryService_DeltaClustersServer) error
FetchClusters(context.Context, *DiscoveryRequest) (*DiscoveryResponse, error)
}
// UnimplementedClusterDiscoveryServiceServer can be embedded to have forward compatible implementations.
type UnimplementedClusterDiscoveryServiceServer struct {
}
func (*UnimplementedClusterDiscoveryServiceServer) StreamClusters(ClusterDiscoveryService_StreamClustersServer) error {
return status.Errorf(codes.Unimplemented, "method StreamClusters not implemented")
}
func (*UnimplementedClusterDiscoveryServiceServer) DeltaClusters(ClusterDiscoveryService_DeltaClustersServer) error {
return status.Errorf(codes.Unimplemented, "method DeltaClusters not implemented")
}
func (*UnimplementedClusterDiscoveryServiceServer) FetchClusters(context.Context, *DiscoveryRequest) (*DiscoveryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FetchClusters not implemented")
}
func RegisterClusterDiscoveryServiceServer(s *grpc.Server, srv ClusterDiscoveryServiceServer) {
s.RegisterService(&_ClusterDiscoveryService_serviceDesc, srv)
}
func _ClusterDiscoveryService_StreamClusters_Handler(srv interface{}, stream grpc.ServerStream) error {
return srv.(ClusterDiscoveryServiceServer).StreamClusters(&clusterDiscoveryServiceStreamClustersServer{stream})
}
type ClusterDiscoveryService_StreamClustersServer interface {
Send(*DiscoveryResponse) error
Recv() (*DiscoveryRequest, error)
grpc.ServerStream
}
type clusterDiscoveryServiceStreamClustersServer struct {
grpc.ServerStream
}
func (x *clusterDiscoveryServiceStreamClustersServer) Send(m *DiscoveryResponse) error {
return x.ServerStream.SendMsg(m)
}
func (x *clusterDiscoveryServiceStreamClustersServer) Recv() (*DiscoveryRequest, error) {
m := new(DiscoveryRequest)
if err := x.ServerStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
func _ClusterDiscoveryService_DeltaClusters_Handler(srv interface{}, stream grpc.ServerStream) error {
return srv.(ClusterDiscoveryServiceServer).DeltaClusters(&clusterDiscoveryServiceDeltaClustersServer{stream})
}
type ClusterDiscoveryService_DeltaClustersServer interface {
Send(*DeltaDiscoveryResponse) error
Recv() (*DeltaDiscoveryRequest, error)
grpc.ServerStream
}
type clusterDiscoveryServiceDeltaClustersServer struct {
grpc.ServerStream
}
func (x *clusterDiscoveryServiceDeltaClustersServer) Send(m *DeltaDiscoveryResponse) error {
return x.ServerStream.SendMsg(m)
}
func (x *clusterDiscoveryServiceDeltaClustersServer) Recv() (*DeltaDiscoveryRequest, error) {
m := new(DeltaDiscoveryRequest)
if err := x.ServerStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
func _ClusterDiscoveryService_FetchClusters_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DiscoveryRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ClusterDiscoveryServiceServer).FetchClusters(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/envoy.api.v2.ClusterDiscoveryService/FetchClusters",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ClusterDiscoveryServiceServer).FetchClusters(ctx, req.(*DiscoveryRequest))
}
return interceptor(ctx, in, info, handler)
}
var _ClusterDiscoveryService_serviceDesc = grpc.ServiceDesc{
ServiceName: "envoy.api.v2.ClusterDiscoveryService",
HandlerType: (*ClusterDiscoveryServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "FetchClusters",
Handler: _ClusterDiscoveryService_FetchClusters_Handler,
},
},
Streams: []grpc.StreamDesc{
{
StreamName: "StreamClusters",
Handler: _ClusterDiscoveryService_StreamClusters_Handler,
ServerStreams: true,
ClientStreams: true,
},
{
StreamName: "DeltaClusters",
Handler: _ClusterDiscoveryService_DeltaClusters_Handler,
ServerStreams: true,
ClientStreams: true,
},
},
Metadata: "envoy/api/v2/cds.proto",
}

View file

@ -0,0 +1,98 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/cds.proto
package envoy_api_v2
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on CdsDummy with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *CdsDummy) Validate() error {
if m == nil {
return nil
}
return nil
}
// CdsDummyValidationError is the validation error returned by
// CdsDummy.Validate if the designated constraints aren't met.
type CdsDummyValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CdsDummyValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CdsDummyValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CdsDummyValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CdsDummyValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CdsDummyValidationError) ErrorName() string { return "CdsDummyValidationError" }
// Error satisfies the builtin error interface
func (e CdsDummyValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCdsDummy.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CdsDummyValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CdsDummyValidationError{}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,470 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/cluster/circuit_breaker.proto
package envoy_api_v2_cluster
import (
_ "github.com/cncf/xds/go/udpa/annotations"
core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core"
_type "github.com/envoyproxy/go-control-plane/envoy/type"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// :ref:`Circuit breaking<arch_overview_circuit_break>` settings can be
// specified individually for each defined priority.
type CircuitBreakers struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// If multiple :ref:`Thresholds<envoy_api_msg_cluster.CircuitBreakers.Thresholds>`
// are defined with the same :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`,
// the first one in the list is used. If no Thresholds is defined for a given
// :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`, the default values
// are used.
Thresholds []*CircuitBreakers_Thresholds `protobuf:"bytes,1,rep,name=thresholds,proto3" json:"thresholds,omitempty"`
}
func (x *CircuitBreakers) Reset() {
*x = CircuitBreakers{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CircuitBreakers) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CircuitBreakers) ProtoMessage() {}
func (x *CircuitBreakers) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CircuitBreakers.ProtoReflect.Descriptor instead.
func (*CircuitBreakers) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescGZIP(), []int{0}
}
func (x *CircuitBreakers) GetThresholds() []*CircuitBreakers_Thresholds {
if x != nil {
return x.Thresholds
}
return nil
}
// A Thresholds defines CircuitBreaker settings for a
// :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`.
// [#next-free-field: 9]
type CircuitBreakers_Thresholds struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`
// the specified CircuitBreaker settings apply to.
Priority core.RoutingPriority `protobuf:"varint,1,opt,name=priority,proto3,enum=envoy.api.v2.core.RoutingPriority" json:"priority,omitempty"`
// The maximum number of connections that Envoy will make to the upstream
// cluster. If not specified, the default is 1024.
MaxConnections *wrappers.UInt32Value `protobuf:"bytes,2,opt,name=max_connections,json=maxConnections,proto3" json:"max_connections,omitempty"`
// The maximum number of pending requests that Envoy will allow to the
// upstream cluster. If not specified, the default is 1024.
MaxPendingRequests *wrappers.UInt32Value `protobuf:"bytes,3,opt,name=max_pending_requests,json=maxPendingRequests,proto3" json:"max_pending_requests,omitempty"`
// The maximum number of parallel requests that Envoy will make to the
// upstream cluster. If not specified, the default is 1024.
MaxRequests *wrappers.UInt32Value `protobuf:"bytes,4,opt,name=max_requests,json=maxRequests,proto3" json:"max_requests,omitempty"`
// The maximum number of parallel retries that Envoy will allow to the
// upstream cluster. If not specified, the default is 3.
MaxRetries *wrappers.UInt32Value `protobuf:"bytes,5,opt,name=max_retries,json=maxRetries,proto3" json:"max_retries,omitempty"`
// Specifies a limit on concurrent retries in relation to the number of active requests. This
// parameter is optional.
//
// .. note::
//
// If this field is set, the retry budget will override any configured retry circuit
// breaker.
RetryBudget *CircuitBreakers_Thresholds_RetryBudget `protobuf:"bytes,8,opt,name=retry_budget,json=retryBudget,proto3" json:"retry_budget,omitempty"`
// If track_remaining is true, then stats will be published that expose
// the number of resources remaining until the circuit breakers open. If
// not specified, the default is false.
//
// .. note::
//
// If a retry budget is used in lieu of the max_retries circuit breaker,
// the remaining retry resources remaining will not be tracked.
TrackRemaining bool `protobuf:"varint,6,opt,name=track_remaining,json=trackRemaining,proto3" json:"track_remaining,omitempty"`
// The maximum number of connection pools per cluster that Envoy will concurrently support at
// once. If not specified, the default is unlimited. Set this for clusters which create a
// large number of connection pools. See
// :ref:`Circuit Breaking <arch_overview_circuit_break_cluster_maximum_connection_pools>` for
// more details.
MaxConnectionPools *wrappers.UInt32Value `protobuf:"bytes,7,opt,name=max_connection_pools,json=maxConnectionPools,proto3" json:"max_connection_pools,omitempty"`
}
func (x *CircuitBreakers_Thresholds) Reset() {
*x = CircuitBreakers_Thresholds{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CircuitBreakers_Thresholds) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CircuitBreakers_Thresholds) ProtoMessage() {}
func (x *CircuitBreakers_Thresholds) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CircuitBreakers_Thresholds.ProtoReflect.Descriptor instead.
func (*CircuitBreakers_Thresholds) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescGZIP(), []int{0, 0}
}
func (x *CircuitBreakers_Thresholds) GetPriority() core.RoutingPriority {
if x != nil {
return x.Priority
}
return core.RoutingPriority_DEFAULT
}
func (x *CircuitBreakers_Thresholds) GetMaxConnections() *wrappers.UInt32Value {
if x != nil {
return x.MaxConnections
}
return nil
}
func (x *CircuitBreakers_Thresholds) GetMaxPendingRequests() *wrappers.UInt32Value {
if x != nil {
return x.MaxPendingRequests
}
return nil
}
func (x *CircuitBreakers_Thresholds) GetMaxRequests() *wrappers.UInt32Value {
if x != nil {
return x.MaxRequests
}
return nil
}
func (x *CircuitBreakers_Thresholds) GetMaxRetries() *wrappers.UInt32Value {
if x != nil {
return x.MaxRetries
}
return nil
}
func (x *CircuitBreakers_Thresholds) GetRetryBudget() *CircuitBreakers_Thresholds_RetryBudget {
if x != nil {
return x.RetryBudget
}
return nil
}
func (x *CircuitBreakers_Thresholds) GetTrackRemaining() bool {
if x != nil {
return x.TrackRemaining
}
return false
}
func (x *CircuitBreakers_Thresholds) GetMaxConnectionPools() *wrappers.UInt32Value {
if x != nil {
return x.MaxConnectionPools
}
return nil
}
type CircuitBreakers_Thresholds_RetryBudget struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Specifies the limit on concurrent retries as a percentage of the sum of active requests and
// active pending requests. For example, if there are 100 active requests and the
// budget_percent is set to 25, there may be 25 active retries.
//
// This parameter is optional. Defaults to 20%.
BudgetPercent *_type.Percent `protobuf:"bytes,1,opt,name=budget_percent,json=budgetPercent,proto3" json:"budget_percent,omitempty"`
// Specifies the minimum retry concurrency allowed for the retry budget. The limit on the
// number of active retries may never go below this number.
//
// This parameter is optional. Defaults to 3.
MinRetryConcurrency *wrappers.UInt32Value `protobuf:"bytes,2,opt,name=min_retry_concurrency,json=minRetryConcurrency,proto3" json:"min_retry_concurrency,omitempty"`
}
func (x *CircuitBreakers_Thresholds_RetryBudget) Reset() {
*x = CircuitBreakers_Thresholds_RetryBudget{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CircuitBreakers_Thresholds_RetryBudget) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CircuitBreakers_Thresholds_RetryBudget) ProtoMessage() {}
func (x *CircuitBreakers_Thresholds_RetryBudget) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CircuitBreakers_Thresholds_RetryBudget.ProtoReflect.Descriptor instead.
func (*CircuitBreakers_Thresholds_RetryBudget) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescGZIP(), []int{0, 0, 0}
}
func (x *CircuitBreakers_Thresholds_RetryBudget) GetBudgetPercent() *_type.Percent {
if x != nil {
return x.BudgetPercent
}
return nil
}
func (x *CircuitBreakers_Thresholds_RetryBudget) GetMinRetryConcurrency() *wrappers.UInt32Value {
if x != nil {
return x.MinRetryConcurrency
}
return nil
}
var File_envoy_api_v2_cluster_circuit_breaker_proto protoreflect.FileDescriptor
var file_envoy_api_v2_cluster_circuit_breaker_proto_rawDesc = []byte{
0x0a, 0x2a, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, 0x63, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74, 0x5f, 0x62,
0x72, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x14, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74,
0x65, 0x72, 0x1a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32,
0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x18, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x70, 0x65, 0x72,
0x63, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70,
0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61,
0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67,
0x72, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61,
0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61,
0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64,
0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x22, 0xcb, 0x06, 0x0a, 0x0f, 0x43, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74, 0x42, 0x72,
0x65, 0x61, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x50, 0x0a, 0x0a, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
0x6f, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
0x72, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x65, 0x72,
0x73, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x52, 0x0a, 0x74, 0x68,
0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x1a, 0xe5, 0x05, 0x0a, 0x0a, 0x54, 0x68, 0x72,
0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x12, 0x48, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72,
0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x6f,
0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x42, 0x08, 0xfa,
0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74,
0x79, 0x12, 0x45, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e,
0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e,
0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f,
0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f,
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x6d, 0x61,
0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x3d, 0x0a, 0x0b, 0x6d, 0x61, 0x78,
0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x6d, 0x61,
0x78, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x0c, 0x72, 0x65, 0x74, 0x72,
0x79, 0x5f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c,
0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74, 0x42, 0x72, 0x65,
0x61, 0x6b, 0x65, 0x72, 0x73, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73,
0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x0b, 0x72, 0x65,
0x74, 0x72, 0x79, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x61,
0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01,
0x28, 0x08, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69,
0x6e, 0x67, 0x12, 0x4e, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12,
0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f,
0x6c, 0x73, 0x1a, 0x9b, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x74, 0x72, 0x79, 0x42, 0x75, 0x64, 0x67,
0x65, 0x74, 0x12, 0x3a, 0x0a, 0x0e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x65, 0x72,
0x63, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x52,
0x0d, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x50,
0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x63,
0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x6d, 0x69, 0x6e,
0x52, 0x65, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79,
0x42, 0x94, 0x01, 0x0a, 0x22, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f,
0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e,
0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x13, 0x43, 0x69, 0x72, 0x63, 0x75, 0x69, 0x74,
0x42, 0x72, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xaa, 0x02,
0x16, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x32, 0x2e, 0x43, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x53, 0xea, 0x02, 0x16, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x41, 0x70, 0x69, 0x2e, 0x56, 0x32, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x53,
0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x19, 0x12, 0x17, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0xba,
0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescOnce sync.Once
file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescData = file_envoy_api_v2_cluster_circuit_breaker_proto_rawDesc
)
func file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescGZIP() []byte {
file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescData)
})
return file_envoy_api_v2_cluster_circuit_breaker_proto_rawDescData
}
var file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
var file_envoy_api_v2_cluster_circuit_breaker_proto_goTypes = []interface{}{
(*CircuitBreakers)(nil), // 0: envoy.api.v2.cluster.CircuitBreakers
(*CircuitBreakers_Thresholds)(nil), // 1: envoy.api.v2.cluster.CircuitBreakers.Thresholds
(*CircuitBreakers_Thresholds_RetryBudget)(nil), // 2: envoy.api.v2.cluster.CircuitBreakers.Thresholds.RetryBudget
(core.RoutingPriority)(0), // 3: envoy.api.v2.core.RoutingPriority
(*wrappers.UInt32Value)(nil), // 4: google.protobuf.UInt32Value
(*_type.Percent)(nil), // 5: envoy.type.Percent
}
var file_envoy_api_v2_cluster_circuit_breaker_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.cluster.CircuitBreakers.thresholds:type_name -> envoy.api.v2.cluster.CircuitBreakers.Thresholds
3, // 1: envoy.api.v2.cluster.CircuitBreakers.Thresholds.priority:type_name -> envoy.api.v2.core.RoutingPriority
4, // 2: envoy.api.v2.cluster.CircuitBreakers.Thresholds.max_connections:type_name -> google.protobuf.UInt32Value
4, // 3: envoy.api.v2.cluster.CircuitBreakers.Thresholds.max_pending_requests:type_name -> google.protobuf.UInt32Value
4, // 4: envoy.api.v2.cluster.CircuitBreakers.Thresholds.max_requests:type_name -> google.protobuf.UInt32Value
4, // 5: envoy.api.v2.cluster.CircuitBreakers.Thresholds.max_retries:type_name -> google.protobuf.UInt32Value
2, // 6: envoy.api.v2.cluster.CircuitBreakers.Thresholds.retry_budget:type_name -> envoy.api.v2.cluster.CircuitBreakers.Thresholds.RetryBudget
4, // 7: envoy.api.v2.cluster.CircuitBreakers.Thresholds.max_connection_pools:type_name -> google.protobuf.UInt32Value
5, // 8: envoy.api.v2.cluster.CircuitBreakers.Thresholds.RetryBudget.budget_percent:type_name -> envoy.type.Percent
4, // 9: envoy.api.v2.cluster.CircuitBreakers.Thresholds.RetryBudget.min_retry_concurrency:type_name -> google.protobuf.UInt32Value
10, // [10:10] is the sub-list for method output_type
10, // [10:10] is the sub-list for method input_type
10, // [10:10] is the sub-list for extension type_name
10, // [10:10] is the sub-list for extension extendee
0, // [0:10] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_cluster_circuit_breaker_proto_init() }
func file_envoy_api_v2_cluster_circuit_breaker_proto_init() {
if File_envoy_api_v2_cluster_circuit_breaker_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CircuitBreakers); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CircuitBreakers_Thresholds); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CircuitBreakers_Thresholds_RetryBudget); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_cluster_circuit_breaker_proto_rawDesc,
NumEnums: 0,
NumMessages: 3,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_cluster_circuit_breaker_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_cluster_circuit_breaker_proto_depIdxs,
MessageInfos: file_envoy_api_v2_cluster_circuit_breaker_proto_msgTypes,
}.Build()
File_envoy_api_v2_cluster_circuit_breaker_proto = out.File
file_envoy_api_v2_cluster_circuit_breaker_proto_rawDesc = nil
file_envoy_api_v2_cluster_circuit_breaker_proto_goTypes = nil
file_envoy_api_v2_cluster_circuit_breaker_proto_depIdxs = nil
}

View file

@ -0,0 +1,342 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/cluster/circuit_breaker.proto
package envoy_api_v2_cluster
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
_ = core.RoutingPriority(0)
)
// Validate checks the field values on CircuitBreakers with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *CircuitBreakers) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetThresholds() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakersValidationError{
field: fmt.Sprintf("Thresholds[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// CircuitBreakersValidationError is the validation error returned by
// CircuitBreakers.Validate if the designated constraints aren't met.
type CircuitBreakersValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CircuitBreakersValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CircuitBreakersValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CircuitBreakersValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CircuitBreakersValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CircuitBreakersValidationError) ErrorName() string { return "CircuitBreakersValidationError" }
// Error satisfies the builtin error interface
func (e CircuitBreakersValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCircuitBreakers.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CircuitBreakersValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CircuitBreakersValidationError{}
// Validate checks the field values on CircuitBreakers_Thresholds with the
// rules defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *CircuitBreakers_Thresholds) Validate() error {
if m == nil {
return nil
}
if _, ok := core.RoutingPriority_name[int32(m.GetPriority())]; !ok {
return CircuitBreakers_ThresholdsValidationError{
field: "Priority",
reason: "value must be one of the defined enum values",
}
}
if v, ok := interface{}(m.GetMaxConnections()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_ThresholdsValidationError{
field: "MaxConnections",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetMaxPendingRequests()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_ThresholdsValidationError{
field: "MaxPendingRequests",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetMaxRequests()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_ThresholdsValidationError{
field: "MaxRequests",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetMaxRetries()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_ThresholdsValidationError{
field: "MaxRetries",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetRetryBudget()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_ThresholdsValidationError{
field: "RetryBudget",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for TrackRemaining
if v, ok := interface{}(m.GetMaxConnectionPools()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_ThresholdsValidationError{
field: "MaxConnectionPools",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// CircuitBreakers_ThresholdsValidationError is the validation error returned
// by CircuitBreakers_Thresholds.Validate if the designated constraints aren't met.
type CircuitBreakers_ThresholdsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CircuitBreakers_ThresholdsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CircuitBreakers_ThresholdsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CircuitBreakers_ThresholdsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CircuitBreakers_ThresholdsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CircuitBreakers_ThresholdsValidationError) ErrorName() string {
return "CircuitBreakers_ThresholdsValidationError"
}
// Error satisfies the builtin error interface
func (e CircuitBreakers_ThresholdsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCircuitBreakers_Thresholds.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CircuitBreakers_ThresholdsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CircuitBreakers_ThresholdsValidationError{}
// Validate checks the field values on CircuitBreakers_Thresholds_RetryBudget
// with the rules defined in the proto definition for this message. If any
// rules are violated, an error is returned.
func (m *CircuitBreakers_Thresholds_RetryBudget) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetBudgetPercent()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_Thresholds_RetryBudgetValidationError{
field: "BudgetPercent",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetMinRetryConcurrency()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return CircuitBreakers_Thresholds_RetryBudgetValidationError{
field: "MinRetryConcurrency",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// CircuitBreakers_Thresholds_RetryBudgetValidationError is the validation
// error returned by CircuitBreakers_Thresholds_RetryBudget.Validate if the
// designated constraints aren't met.
type CircuitBreakers_Thresholds_RetryBudgetValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CircuitBreakers_Thresholds_RetryBudgetValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CircuitBreakers_Thresholds_RetryBudgetValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CircuitBreakers_Thresholds_RetryBudgetValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CircuitBreakers_Thresholds_RetryBudgetValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CircuitBreakers_Thresholds_RetryBudgetValidationError) ErrorName() string {
return "CircuitBreakers_Thresholds_RetryBudgetValidationError"
}
// Error satisfies the builtin error interface
func (e CircuitBreakers_Thresholds_RetryBudgetValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCircuitBreakers_Thresholds_RetryBudget.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CircuitBreakers_Thresholds_RetryBudgetValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CircuitBreakers_Thresholds_RetryBudgetValidationError{}

View file

@ -0,0 +1,185 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/cluster/filter.proto
package envoy_api_v2_cluster
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
any "github.com/golang/protobuf/ptypes/any"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type Filter struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the filter to instantiate. The name must match a
// :ref:`supported filter <config_network_filters>`.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Filter specific configuration which depends on the filter being
// instantiated. See the supported filters for further documentation.
TypedConfig *any.Any `protobuf:"bytes,2,opt,name=typed_config,json=typedConfig,proto3" json:"typed_config,omitempty"`
}
func (x *Filter) Reset() {
*x = Filter{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_cluster_filter_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Filter) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Filter) ProtoMessage() {}
func (x *Filter) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_cluster_filter_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Filter.ProtoReflect.Descriptor instead.
func (*Filter) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_cluster_filter_proto_rawDescGZIP(), []int{0}
}
func (x *Filter) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Filter) GetTypedConfig() *any.Any {
if x != nil {
return x.TypedConfig
}
return nil
}
var File_envoy_api_v2_cluster_filter_proto protoreflect.FileDescriptor
var file_envoy_api_v2_cluster_filter_proto_rawDesc = []byte{
0x0a, 0x21, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x12, 0x14, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76,
0x32, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61,
0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5e, 0x0a, 0x06,
0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x20, 0x01, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x0c, 0x74, 0x79, 0x70, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52,
0x0b, 0x74, 0x79, 0x70, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x8c, 0x01, 0x0a,
0x22, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6c, 0x75, 0x73,
0x74, 0x65, 0x72, 0x42, 0x0b, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f,
0x50, 0x01, 0xaa, 0x02, 0x16, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56,
0x32, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x53, 0xea, 0x02, 0x16, 0x45, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x32, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74,
0x65, 0x72, 0x4e, 0x53, 0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x19, 0x12, 0x17, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_cluster_filter_proto_rawDescOnce sync.Once
file_envoy_api_v2_cluster_filter_proto_rawDescData = file_envoy_api_v2_cluster_filter_proto_rawDesc
)
func file_envoy_api_v2_cluster_filter_proto_rawDescGZIP() []byte {
file_envoy_api_v2_cluster_filter_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_cluster_filter_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_cluster_filter_proto_rawDescData)
})
return file_envoy_api_v2_cluster_filter_proto_rawDescData
}
var file_envoy_api_v2_cluster_filter_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_api_v2_cluster_filter_proto_goTypes = []interface{}{
(*Filter)(nil), // 0: envoy.api.v2.cluster.Filter
(*any.Any)(nil), // 1: google.protobuf.Any
}
var file_envoy_api_v2_cluster_filter_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.cluster.Filter.typed_config:type_name -> google.protobuf.Any
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_cluster_filter_proto_init() }
func file_envoy_api_v2_cluster_filter_proto_init() {
if File_envoy_api_v2_cluster_filter_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_cluster_filter_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Filter); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_cluster_filter_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_cluster_filter_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_cluster_filter_proto_depIdxs,
MessageInfos: file_envoy_api_v2_cluster_filter_proto_msgTypes,
}.Build()
File_envoy_api_v2_cluster_filter_proto = out.File
file_envoy_api_v2_cluster_filter_proto_rawDesc = nil
file_envoy_api_v2_cluster_filter_proto_goTypes = nil
file_envoy_api_v2_cluster_filter_proto_depIdxs = nil
}

View file

@ -0,0 +1,115 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/cluster/filter.proto
package envoy_api_v2_cluster
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on Filter with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Filter) Validate() error {
if m == nil {
return nil
}
if len(m.GetName()) < 1 {
return FilterValidationError{
field: "Name",
reason: "value length must be at least 1 bytes",
}
}
if v, ok := interface{}(m.GetTypedConfig()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return FilterValidationError{
field: "TypedConfig",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// FilterValidationError is the validation error returned by Filter.Validate if
// the designated constraints aren't met.
type FilterValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e FilterValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e FilterValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e FilterValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e FilterValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e FilterValidationError) ErrorName() string { return "FilterValidationError" }
// Error satisfies the builtin error interface
func (e FilterValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sFilter.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = FilterValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = FilterValidationError{}

View file

@ -0,0 +1,549 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/cluster/outlier_detection.proto
package envoy_api_v2_cluster
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
duration "github.com/golang/protobuf/ptypes/duration"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// See the :ref:`architecture overview <arch_overview_outlier_detection>` for
// more information on outlier detection.
// [#next-free-field: 21]
type OutlierDetection struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The number of consecutive 5xx responses or local origin errors that are mapped
// to 5xx error codes before a consecutive 5xx ejection
// occurs. Defaults to 5.
Consecutive_5Xx *wrappers.UInt32Value `protobuf:"bytes,1,opt,name=consecutive_5xx,json=consecutive5xx,proto3" json:"consecutive_5xx,omitempty"`
// The time interval between ejection analysis sweeps. This can result in
// both new ejections as well as hosts being returned to service. Defaults
// to 10000ms or 10s.
Interval *duration.Duration `protobuf:"bytes,2,opt,name=interval,proto3" json:"interval,omitempty"`
// The base time that a host is ejected for. The real time is equal to the
// base time multiplied by the number of times the host has been ejected.
// Defaults to 30000ms or 30s.
BaseEjectionTime *duration.Duration `protobuf:"bytes,3,opt,name=base_ejection_time,json=baseEjectionTime,proto3" json:"base_ejection_time,omitempty"`
// The maximum % of an upstream cluster that can be ejected due to outlier
// detection. Defaults to 10% but will eject at least one host regardless of the value.
MaxEjectionPercent *wrappers.UInt32Value `protobuf:"bytes,4,opt,name=max_ejection_percent,json=maxEjectionPercent,proto3" json:"max_ejection_percent,omitempty"`
// The % chance that a host will be actually ejected when an outlier status
// is detected through consecutive 5xx. This setting can be used to disable
// ejection or to ramp it up slowly. Defaults to 100.
EnforcingConsecutive_5Xx *wrappers.UInt32Value `protobuf:"bytes,5,opt,name=enforcing_consecutive_5xx,json=enforcingConsecutive5xx,proto3" json:"enforcing_consecutive_5xx,omitempty"`
// The % chance that a host will be actually ejected when an outlier status
// is detected through success rate statistics. This setting can be used to
// disable ejection or to ramp it up slowly. Defaults to 100.
EnforcingSuccessRate *wrappers.UInt32Value `protobuf:"bytes,6,opt,name=enforcing_success_rate,json=enforcingSuccessRate,proto3" json:"enforcing_success_rate,omitempty"`
// The number of hosts in a cluster that must have enough request volume to
// detect success rate outliers. If the number of hosts is less than this
// setting, outlier detection via success rate statistics is not performed
// for any host in the cluster. Defaults to 5.
SuccessRateMinimumHosts *wrappers.UInt32Value `protobuf:"bytes,7,opt,name=success_rate_minimum_hosts,json=successRateMinimumHosts,proto3" json:"success_rate_minimum_hosts,omitempty"`
// The minimum number of total requests that must be collected in one
// interval (as defined by the interval duration above) to include this host
// in success rate based outlier detection. If the volume is lower than this
// setting, outlier detection via success rate statistics is not performed
// for that host. Defaults to 100.
SuccessRateRequestVolume *wrappers.UInt32Value `protobuf:"bytes,8,opt,name=success_rate_request_volume,json=successRateRequestVolume,proto3" json:"success_rate_request_volume,omitempty"`
// This factor is used to determine the ejection threshold for success rate
// outlier ejection. The ejection threshold is the difference between the
// mean success rate, and the product of this factor and the standard
// deviation of the mean success rate: mean - (stdev *
// success_rate_stdev_factor). This factor is divided by a thousand to get a
// double. That is, if the desired factor is 1.9, the runtime value should
// be 1900. Defaults to 1900.
SuccessRateStdevFactor *wrappers.UInt32Value `protobuf:"bytes,9,opt,name=success_rate_stdev_factor,json=successRateStdevFactor,proto3" json:"success_rate_stdev_factor,omitempty"`
// The number of consecutive gateway failures (502, 503, 504 status codes)
// before a consecutive gateway failure ejection occurs. Defaults to 5.
ConsecutiveGatewayFailure *wrappers.UInt32Value `protobuf:"bytes,10,opt,name=consecutive_gateway_failure,json=consecutiveGatewayFailure,proto3" json:"consecutive_gateway_failure,omitempty"`
// The % chance that a host will be actually ejected when an outlier status
// is detected through consecutive gateway failures. This setting can be
// used to disable ejection or to ramp it up slowly. Defaults to 0.
EnforcingConsecutiveGatewayFailure *wrappers.UInt32Value `protobuf:"bytes,11,opt,name=enforcing_consecutive_gateway_failure,json=enforcingConsecutiveGatewayFailure,proto3" json:"enforcing_consecutive_gateway_failure,omitempty"`
// Determines whether to distinguish local origin failures from external errors. If set to true
// the following configuration parameters are taken into account:
// :ref:`consecutive_local_origin_failure<envoy_api_field_cluster.OutlierDetection.consecutive_local_origin_failure>`,
// :ref:`enforcing_consecutive_local_origin_failure<envoy_api_field_cluster.OutlierDetection.enforcing_consecutive_local_origin_failure>`
// and
// :ref:`enforcing_local_origin_success_rate<envoy_api_field_cluster.OutlierDetection.enforcing_local_origin_success_rate>`.
// Defaults to false.
SplitExternalLocalOriginErrors bool `protobuf:"varint,12,opt,name=split_external_local_origin_errors,json=splitExternalLocalOriginErrors,proto3" json:"split_external_local_origin_errors,omitempty"`
// The number of consecutive locally originated failures before ejection
// occurs. Defaults to 5. Parameter takes effect only when
// :ref:`split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>`
// is set to true.
ConsecutiveLocalOriginFailure *wrappers.UInt32Value `protobuf:"bytes,13,opt,name=consecutive_local_origin_failure,json=consecutiveLocalOriginFailure,proto3" json:"consecutive_local_origin_failure,omitempty"`
// The % chance that a host will be actually ejected when an outlier status
// is detected through consecutive locally originated failures. This setting can be
// used to disable ejection or to ramp it up slowly. Defaults to 100.
// Parameter takes effect only when
// :ref:`split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>`
// is set to true.
EnforcingConsecutiveLocalOriginFailure *wrappers.UInt32Value `protobuf:"bytes,14,opt,name=enforcing_consecutive_local_origin_failure,json=enforcingConsecutiveLocalOriginFailure,proto3" json:"enforcing_consecutive_local_origin_failure,omitempty"`
// The % chance that a host will be actually ejected when an outlier status
// is detected through success rate statistics for locally originated errors.
// This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.
// Parameter takes effect only when
// :ref:`split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>`
// is set to true.
EnforcingLocalOriginSuccessRate *wrappers.UInt32Value `protobuf:"bytes,15,opt,name=enforcing_local_origin_success_rate,json=enforcingLocalOriginSuccessRate,proto3" json:"enforcing_local_origin_success_rate,omitempty"`
// The failure percentage to use when determining failure percentage-based outlier detection. If
// the failure percentage of a given host is greater than or equal to this value, it will be
// ejected. Defaults to 85.
FailurePercentageThreshold *wrappers.UInt32Value `protobuf:"bytes,16,opt,name=failure_percentage_threshold,json=failurePercentageThreshold,proto3" json:"failure_percentage_threshold,omitempty"`
// The % chance that a host will be actually ejected when an outlier status is detected through
// failure percentage statistics. This setting can be used to disable ejection or to ramp it up
// slowly. Defaults to 0.
//
// [#next-major-version: setting this without setting failure_percentage_threshold should be
// invalid in v4.]
EnforcingFailurePercentage *wrappers.UInt32Value `protobuf:"bytes,17,opt,name=enforcing_failure_percentage,json=enforcingFailurePercentage,proto3" json:"enforcing_failure_percentage,omitempty"`
// The % chance that a host will be actually ejected when an outlier status is detected through
// local-origin failure percentage statistics. This setting can be used to disable ejection or to
// ramp it up slowly. Defaults to 0.
EnforcingFailurePercentageLocalOrigin *wrappers.UInt32Value `protobuf:"bytes,18,opt,name=enforcing_failure_percentage_local_origin,json=enforcingFailurePercentageLocalOrigin,proto3" json:"enforcing_failure_percentage_local_origin,omitempty"`
// The minimum number of hosts in a cluster in order to perform failure percentage-based ejection.
// If the total number of hosts in the cluster is less than this value, failure percentage-based
// ejection will not be performed. Defaults to 5.
FailurePercentageMinimumHosts *wrappers.UInt32Value `protobuf:"bytes,19,opt,name=failure_percentage_minimum_hosts,json=failurePercentageMinimumHosts,proto3" json:"failure_percentage_minimum_hosts,omitempty"`
// The minimum number of total requests that must be collected in one interval (as defined by the
// interval duration above) to perform failure percentage-based ejection for this host. If the
// volume is lower than this setting, failure percentage-based ejection will not be performed for
// this host. Defaults to 50.
FailurePercentageRequestVolume *wrappers.UInt32Value `protobuf:"bytes,20,opt,name=failure_percentage_request_volume,json=failurePercentageRequestVolume,proto3" json:"failure_percentage_request_volume,omitempty"`
}
func (x *OutlierDetection) Reset() {
*x = OutlierDetection{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_cluster_outlier_detection_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OutlierDetection) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OutlierDetection) ProtoMessage() {}
func (x *OutlierDetection) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_cluster_outlier_detection_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OutlierDetection.ProtoReflect.Descriptor instead.
func (*OutlierDetection) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_cluster_outlier_detection_proto_rawDescGZIP(), []int{0}
}
func (x *OutlierDetection) GetConsecutive_5Xx() *wrappers.UInt32Value {
if x != nil {
return x.Consecutive_5Xx
}
return nil
}
func (x *OutlierDetection) GetInterval() *duration.Duration {
if x != nil {
return x.Interval
}
return nil
}
func (x *OutlierDetection) GetBaseEjectionTime() *duration.Duration {
if x != nil {
return x.BaseEjectionTime
}
return nil
}
func (x *OutlierDetection) GetMaxEjectionPercent() *wrappers.UInt32Value {
if x != nil {
return x.MaxEjectionPercent
}
return nil
}
func (x *OutlierDetection) GetEnforcingConsecutive_5Xx() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingConsecutive_5Xx
}
return nil
}
func (x *OutlierDetection) GetEnforcingSuccessRate() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingSuccessRate
}
return nil
}
func (x *OutlierDetection) GetSuccessRateMinimumHosts() *wrappers.UInt32Value {
if x != nil {
return x.SuccessRateMinimumHosts
}
return nil
}
func (x *OutlierDetection) GetSuccessRateRequestVolume() *wrappers.UInt32Value {
if x != nil {
return x.SuccessRateRequestVolume
}
return nil
}
func (x *OutlierDetection) GetSuccessRateStdevFactor() *wrappers.UInt32Value {
if x != nil {
return x.SuccessRateStdevFactor
}
return nil
}
func (x *OutlierDetection) GetConsecutiveGatewayFailure() *wrappers.UInt32Value {
if x != nil {
return x.ConsecutiveGatewayFailure
}
return nil
}
func (x *OutlierDetection) GetEnforcingConsecutiveGatewayFailure() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingConsecutiveGatewayFailure
}
return nil
}
func (x *OutlierDetection) GetSplitExternalLocalOriginErrors() bool {
if x != nil {
return x.SplitExternalLocalOriginErrors
}
return false
}
func (x *OutlierDetection) GetConsecutiveLocalOriginFailure() *wrappers.UInt32Value {
if x != nil {
return x.ConsecutiveLocalOriginFailure
}
return nil
}
func (x *OutlierDetection) GetEnforcingConsecutiveLocalOriginFailure() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingConsecutiveLocalOriginFailure
}
return nil
}
func (x *OutlierDetection) GetEnforcingLocalOriginSuccessRate() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingLocalOriginSuccessRate
}
return nil
}
func (x *OutlierDetection) GetFailurePercentageThreshold() *wrappers.UInt32Value {
if x != nil {
return x.FailurePercentageThreshold
}
return nil
}
func (x *OutlierDetection) GetEnforcingFailurePercentage() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingFailurePercentage
}
return nil
}
func (x *OutlierDetection) GetEnforcingFailurePercentageLocalOrigin() *wrappers.UInt32Value {
if x != nil {
return x.EnforcingFailurePercentageLocalOrigin
}
return nil
}
func (x *OutlierDetection) GetFailurePercentageMinimumHosts() *wrappers.UInt32Value {
if x != nil {
return x.FailurePercentageMinimumHosts
}
return nil
}
func (x *OutlierDetection) GetFailurePercentageRequestVolume() *wrappers.UInt32Value {
if x != nil {
return x.FailurePercentageRequestVolume
}
return nil
}
var File_envoy_api_v2_cluster_outlier_detection_proto protoreflect.FileDescriptor
var file_envoy_api_v2_cluster_outlier_detection_proto_rawDesc = []byte{
0x0a, 0x2c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, 0x6f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x5f, 0x64,
0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x14,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61,
0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbe, 0x0f, 0x0a,
0x10, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x12, 0x45, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65,
0x5f, 0x35, 0x78, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e,
0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63,
0x75, 0x74, 0x69, 0x76, 0x65, 0x35, 0x78, 0x78, 0x12, 0x3f, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0xaa, 0x01, 0x02, 0x2a, 0x00, 0x52,
0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x51, 0x0a, 0x12, 0x62, 0x61, 0x73,
0x65, 0x5f, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x42, 0x08, 0xfa, 0x42, 0x05, 0xaa, 0x01, 0x02, 0x2a, 0x00, 0x52, 0x10, 0x62, 0x61, 0x73, 0x65,
0x45, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x57, 0x0a, 0x14,
0x6d, 0x61, 0x78, 0x5f, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72,
0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e,
0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18,
0x64, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65,
0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x61, 0x0a, 0x19, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69,
0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x35,
0x78, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33,
0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52,
0x17, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63,
0x75, 0x74, 0x69, 0x76, 0x65, 0x35, 0x78, 0x78, 0x12, 0x5b, 0x0a, 0x16, 0x65, 0x6e, 0x66, 0x6f,
0x72, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61,
0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33,
0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52,
0x14, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73,
0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x59, 0x0a, 0x1a, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x6f,
0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74,
0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
0x52, 0x61, 0x74, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x6f, 0x73, 0x74, 0x73,
0x12, 0x5b, 0x0a, 0x1b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65,
0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18,
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x52, 0x18, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x57, 0x0a,
0x19, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74,
0x64, 0x65, 0x76, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x16,
0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x53, 0x74, 0x64, 0x65, 0x76,
0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x5c, 0x0a, 0x1b, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63,
0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x66, 0x61,
0x69, 0x6c, 0x75, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49,
0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x19, 0x63, 0x6f, 0x6e, 0x73, 0x65,
0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x46, 0x61, 0x69,
0x6c, 0x75, 0x72, 0x65, 0x12, 0x78, 0x0a, 0x25, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e,
0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x67, 0x61,
0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x18, 0x0b, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x22, 0x65, 0x6e, 0x66, 0x6f,
0x72, 0x63, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65,
0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x4a,
0x0a, 0x22, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x65, 0x72,
0x72, 0x6f, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1e, 0x73, 0x70, 0x6c, 0x69,
0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x72,
0x69, 0x67, 0x69, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x65, 0x0a, 0x20, 0x63, 0x6f,
0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f,
0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x18, 0x0d,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x52, 0x1d, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x4c,
0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72,
0x65, 0x12, 0x81, 0x01, 0x0a, 0x2a, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x5f,
0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x61,
0x6c, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65,
0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x26, 0x65,
0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74,
0x69, 0x76, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x46, 0x61,
0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x73, 0x0a, 0x23, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69,
0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f,
0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x1f, 0x65, 0x6e, 0x66, 0x6f, 0x72,
0x63, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x53,
0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x67, 0x0a, 0x1c, 0x66, 0x61,
0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65,
0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07,
0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x1a, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65,
0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68,
0x6f, 0x6c, 0x64, 0x12, 0x67, 0x0a, 0x1c, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67,
0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
0x61, 0x67, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74,
0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64,
0x52, 0x1a, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x46, 0x61, 0x69, 0x6c, 0x75,
0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x7f, 0x0a, 0x29,
0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72,
0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x5f, 0x6c, 0x6f, 0x63,
0x61, 0x6c, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa,
0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x25, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e,
0x67, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61,
0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x65, 0x0a,
0x20, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
0x61, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x6f, 0x73, 0x74,
0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1d, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x50, 0x65,
0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48,
0x6f, 0x73, 0x74, 0x73, 0x12, 0x67, 0x0a, 0x21, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f,
0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1e, 0x66,
0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x42, 0x96, 0x01,
0x0a, 0x22, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x42, 0x15, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x44, 0x65, 0x74,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xaa, 0x02, 0x16,
0x45, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x32, 0x2e, 0x43, 0x6c, 0x75,
0x73, 0x74, 0x65, 0x72, 0x4e, 0x53, 0xea, 0x02, 0x16, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x41,
0x70, 0x69, 0x2e, 0x56, 0x32, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x53, 0xf2,
0x98, 0xfe, 0x8f, 0x05, 0x19, 0x12, 0x17, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0xba, 0x80,
0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_cluster_outlier_detection_proto_rawDescOnce sync.Once
file_envoy_api_v2_cluster_outlier_detection_proto_rawDescData = file_envoy_api_v2_cluster_outlier_detection_proto_rawDesc
)
func file_envoy_api_v2_cluster_outlier_detection_proto_rawDescGZIP() []byte {
file_envoy_api_v2_cluster_outlier_detection_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_cluster_outlier_detection_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_cluster_outlier_detection_proto_rawDescData)
})
return file_envoy_api_v2_cluster_outlier_detection_proto_rawDescData
}
var file_envoy_api_v2_cluster_outlier_detection_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_api_v2_cluster_outlier_detection_proto_goTypes = []interface{}{
(*OutlierDetection)(nil), // 0: envoy.api.v2.cluster.OutlierDetection
(*wrappers.UInt32Value)(nil), // 1: google.protobuf.UInt32Value
(*duration.Duration)(nil), // 2: google.protobuf.Duration
}
var file_envoy_api_v2_cluster_outlier_detection_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.cluster.OutlierDetection.consecutive_5xx:type_name -> google.protobuf.UInt32Value
2, // 1: envoy.api.v2.cluster.OutlierDetection.interval:type_name -> google.protobuf.Duration
2, // 2: envoy.api.v2.cluster.OutlierDetection.base_ejection_time:type_name -> google.protobuf.Duration
1, // 3: envoy.api.v2.cluster.OutlierDetection.max_ejection_percent:type_name -> google.protobuf.UInt32Value
1, // 4: envoy.api.v2.cluster.OutlierDetection.enforcing_consecutive_5xx:type_name -> google.protobuf.UInt32Value
1, // 5: envoy.api.v2.cluster.OutlierDetection.enforcing_success_rate:type_name -> google.protobuf.UInt32Value
1, // 6: envoy.api.v2.cluster.OutlierDetection.success_rate_minimum_hosts:type_name -> google.protobuf.UInt32Value
1, // 7: envoy.api.v2.cluster.OutlierDetection.success_rate_request_volume:type_name -> google.protobuf.UInt32Value
1, // 8: envoy.api.v2.cluster.OutlierDetection.success_rate_stdev_factor:type_name -> google.protobuf.UInt32Value
1, // 9: envoy.api.v2.cluster.OutlierDetection.consecutive_gateway_failure:type_name -> google.protobuf.UInt32Value
1, // 10: envoy.api.v2.cluster.OutlierDetection.enforcing_consecutive_gateway_failure:type_name -> google.protobuf.UInt32Value
1, // 11: envoy.api.v2.cluster.OutlierDetection.consecutive_local_origin_failure:type_name -> google.protobuf.UInt32Value
1, // 12: envoy.api.v2.cluster.OutlierDetection.enforcing_consecutive_local_origin_failure:type_name -> google.protobuf.UInt32Value
1, // 13: envoy.api.v2.cluster.OutlierDetection.enforcing_local_origin_success_rate:type_name -> google.protobuf.UInt32Value
1, // 14: envoy.api.v2.cluster.OutlierDetection.failure_percentage_threshold:type_name -> google.protobuf.UInt32Value
1, // 15: envoy.api.v2.cluster.OutlierDetection.enforcing_failure_percentage:type_name -> google.protobuf.UInt32Value
1, // 16: envoy.api.v2.cluster.OutlierDetection.enforcing_failure_percentage_local_origin:type_name -> google.protobuf.UInt32Value
1, // 17: envoy.api.v2.cluster.OutlierDetection.failure_percentage_minimum_hosts:type_name -> google.protobuf.UInt32Value
1, // 18: envoy.api.v2.cluster.OutlierDetection.failure_percentage_request_volume:type_name -> google.protobuf.UInt32Value
19, // [19:19] is the sub-list for method output_type
19, // [19:19] is the sub-list for method input_type
19, // [19:19] is the sub-list for extension type_name
19, // [19:19] is the sub-list for extension extendee
0, // [0:19] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_cluster_outlier_detection_proto_init() }
func file_envoy_api_v2_cluster_outlier_detection_proto_init() {
if File_envoy_api_v2_cluster_outlier_detection_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_cluster_outlier_detection_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OutlierDetection); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_cluster_outlier_detection_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_cluster_outlier_detection_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_cluster_outlier_detection_proto_depIdxs,
MessageInfos: file_envoy_api_v2_cluster_outlier_detection_proto_msgTypes,
}.Build()
File_envoy_api_v2_cluster_outlier_detection_proto = out.File
file_envoy_api_v2_cluster_outlier_detection_proto_rawDesc = nil
file_envoy_api_v2_cluster_outlier_detection_proto_goTypes = nil
file_envoy_api_v2_cluster_outlier_detection_proto_depIdxs = nil
}

View file

@ -0,0 +1,322 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/cluster/outlier_detection.proto
package envoy_api_v2_cluster
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on OutlierDetection with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *OutlierDetection) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetConsecutive_5Xx()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "Consecutive_5Xx",
reason: "embedded message failed validation",
cause: err,
}
}
}
if d := m.GetInterval(); d != nil {
dur, err := ptypes.Duration(d)
if err != nil {
return OutlierDetectionValidationError{
field: "Interval",
reason: "value is not a valid duration",
cause: err,
}
}
gt := time.Duration(0*time.Second + 0*time.Nanosecond)
if dur <= gt {
return OutlierDetectionValidationError{
field: "Interval",
reason: "value must be greater than 0s",
}
}
}
if d := m.GetBaseEjectionTime(); d != nil {
dur, err := ptypes.Duration(d)
if err != nil {
return OutlierDetectionValidationError{
field: "BaseEjectionTime",
reason: "value is not a valid duration",
cause: err,
}
}
gt := time.Duration(0*time.Second + 0*time.Nanosecond)
if dur <= gt {
return OutlierDetectionValidationError{
field: "BaseEjectionTime",
reason: "value must be greater than 0s",
}
}
}
if wrapper := m.GetMaxEjectionPercent(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "MaxEjectionPercent",
reason: "value must be less than or equal to 100",
}
}
}
if wrapper := m.GetEnforcingConsecutive_5Xx(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingConsecutive_5Xx",
reason: "value must be less than or equal to 100",
}
}
}
if wrapper := m.GetEnforcingSuccessRate(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingSuccessRate",
reason: "value must be less than or equal to 100",
}
}
}
if v, ok := interface{}(m.GetSuccessRateMinimumHosts()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "SuccessRateMinimumHosts",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetSuccessRateRequestVolume()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "SuccessRateRequestVolume",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetSuccessRateStdevFactor()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "SuccessRateStdevFactor",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetConsecutiveGatewayFailure()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "ConsecutiveGatewayFailure",
reason: "embedded message failed validation",
cause: err,
}
}
}
if wrapper := m.GetEnforcingConsecutiveGatewayFailure(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingConsecutiveGatewayFailure",
reason: "value must be less than or equal to 100",
}
}
}
// no validation rules for SplitExternalLocalOriginErrors
if v, ok := interface{}(m.GetConsecutiveLocalOriginFailure()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "ConsecutiveLocalOriginFailure",
reason: "embedded message failed validation",
cause: err,
}
}
}
if wrapper := m.GetEnforcingConsecutiveLocalOriginFailure(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingConsecutiveLocalOriginFailure",
reason: "value must be less than or equal to 100",
}
}
}
if wrapper := m.GetEnforcingLocalOriginSuccessRate(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingLocalOriginSuccessRate",
reason: "value must be less than or equal to 100",
}
}
}
if wrapper := m.GetFailurePercentageThreshold(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "FailurePercentageThreshold",
reason: "value must be less than or equal to 100",
}
}
}
if wrapper := m.GetEnforcingFailurePercentage(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingFailurePercentage",
reason: "value must be less than or equal to 100",
}
}
}
if wrapper := m.GetEnforcingFailurePercentageLocalOrigin(); wrapper != nil {
if wrapper.GetValue() > 100 {
return OutlierDetectionValidationError{
field: "EnforcingFailurePercentageLocalOrigin",
reason: "value must be less than or equal to 100",
}
}
}
if v, ok := interface{}(m.GetFailurePercentageMinimumHosts()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "FailurePercentageMinimumHosts",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetFailurePercentageRequestVolume()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return OutlierDetectionValidationError{
field: "FailurePercentageRequestVolume",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// OutlierDetectionValidationError is the validation error returned by
// OutlierDetection.Validate if the designated constraints aren't met.
type OutlierDetectionValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e OutlierDetectionValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e OutlierDetectionValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e OutlierDetectionValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e OutlierDetectionValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e OutlierDetectionValidationError) ErrorName() string { return "OutlierDetectionValidationError" }
// Error satisfies the builtin error interface
func (e OutlierDetectionValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sOutlierDetection.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = OutlierDetectionValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = OutlierDetectionValidationError{}

View file

@ -0,0 +1,806 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/core/address.proto
package envoy_api_v2_core
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type SocketAddress_Protocol int32
const (
SocketAddress_TCP SocketAddress_Protocol = 0
SocketAddress_UDP SocketAddress_Protocol = 1
)
// Enum value maps for SocketAddress_Protocol.
var (
SocketAddress_Protocol_name = map[int32]string{
0: "TCP",
1: "UDP",
}
SocketAddress_Protocol_value = map[string]int32{
"TCP": 0,
"UDP": 1,
}
)
func (x SocketAddress_Protocol) Enum() *SocketAddress_Protocol {
p := new(SocketAddress_Protocol)
*p = x
return p
}
func (x SocketAddress_Protocol) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (SocketAddress_Protocol) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_api_v2_core_address_proto_enumTypes[0].Descriptor()
}
func (SocketAddress_Protocol) Type() protoreflect.EnumType {
return &file_envoy_api_v2_core_address_proto_enumTypes[0]
}
func (x SocketAddress_Protocol) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use SocketAddress_Protocol.Descriptor instead.
func (SocketAddress_Protocol) EnumDescriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{1, 0}
}
type Pipe struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Unix Domain Socket path. On Linux, paths starting with '@' will use the
// abstract namespace. The starting '@' is replaced by a null byte by Envoy.
// Paths starting with '@' will result in an error in environments other than
// Linux.
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
// The mode for the Pipe. Not applicable for abstract sockets.
Mode uint32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"`
}
func (x *Pipe) Reset() {
*x = Pipe{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Pipe) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Pipe) ProtoMessage() {}
func (x *Pipe) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Pipe.ProtoReflect.Descriptor instead.
func (*Pipe) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{0}
}
func (x *Pipe) GetPath() string {
if x != nil {
return x.Path
}
return ""
}
func (x *Pipe) GetMode() uint32 {
if x != nil {
return x.Mode
}
return 0
}
// [#next-free-field: 7]
type SocketAddress struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Protocol SocketAddress_Protocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=envoy.api.v2.core.SocketAddress_Protocol" json:"protocol,omitempty"`
// The address for this socket. :ref:`Listeners <config_listeners>` will bind
// to the address. An empty address is not allowed. Specify ``0.0.0.0`` or ``::``
// to bind to any address. [#comment:TODO(zuercher) reinstate when implemented:
// It is possible to distinguish a Listener address via the prefix/suffix matching
// in :ref:`FilterChainMatch <envoy_api_msg_listener.FilterChainMatch>`.] When used
// within an upstream :ref:`BindConfig <envoy_api_msg_core.BindConfig>`, the address
// controls the source address of outbound connections. For :ref:`clusters
// <envoy_api_msg_Cluster>`, the cluster type determines whether the
// address must be an IP (*STATIC* or *EDS* clusters) or a hostname resolved by DNS
// (*STRICT_DNS* or *LOGICAL_DNS* clusters). Address resolution can be customized
// via :ref:`resolver_name <envoy_api_field_core.SocketAddress.resolver_name>`.
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
// Types that are assignable to PortSpecifier:
// *SocketAddress_PortValue
// *SocketAddress_NamedPort
PortSpecifier isSocketAddress_PortSpecifier `protobuf_oneof:"port_specifier"`
// The name of the custom resolver. This must have been registered with Envoy. If
// this is empty, a context dependent default applies. If the address is a concrete
// IP address, no resolution will occur. If address is a hostname this
// should be set for resolution other than DNS. Specifying a custom resolver with
// *STRICT_DNS* or *LOGICAL_DNS* will generate an error at runtime.
ResolverName string `protobuf:"bytes,5,opt,name=resolver_name,json=resolverName,proto3" json:"resolver_name,omitempty"`
// When binding to an IPv6 address above, this enables `IPv4 compatibility
// <https://tools.ietf.org/html/rfc3493#page-11>`_. Binding to ``::`` will
// allow both IPv4 and IPv6 connections, with peer IPv4 addresses mapped into
// IPv6 space as ``::FFFF:<IPv4-address>``.
Ipv4Compat bool `protobuf:"varint,6,opt,name=ipv4_compat,json=ipv4Compat,proto3" json:"ipv4_compat,omitempty"`
}
func (x *SocketAddress) Reset() {
*x = SocketAddress{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SocketAddress) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SocketAddress) ProtoMessage() {}
func (x *SocketAddress) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SocketAddress.ProtoReflect.Descriptor instead.
func (*SocketAddress) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{1}
}
func (x *SocketAddress) GetProtocol() SocketAddress_Protocol {
if x != nil {
return x.Protocol
}
return SocketAddress_TCP
}
func (x *SocketAddress) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
func (m *SocketAddress) GetPortSpecifier() isSocketAddress_PortSpecifier {
if m != nil {
return m.PortSpecifier
}
return nil
}
func (x *SocketAddress) GetPortValue() uint32 {
if x, ok := x.GetPortSpecifier().(*SocketAddress_PortValue); ok {
return x.PortValue
}
return 0
}
func (x *SocketAddress) GetNamedPort() string {
if x, ok := x.GetPortSpecifier().(*SocketAddress_NamedPort); ok {
return x.NamedPort
}
return ""
}
func (x *SocketAddress) GetResolverName() string {
if x != nil {
return x.ResolverName
}
return ""
}
func (x *SocketAddress) GetIpv4Compat() bool {
if x != nil {
return x.Ipv4Compat
}
return false
}
type isSocketAddress_PortSpecifier interface {
isSocketAddress_PortSpecifier()
}
type SocketAddress_PortValue struct {
PortValue uint32 `protobuf:"varint,3,opt,name=port_value,json=portValue,proto3,oneof"`
}
type SocketAddress_NamedPort struct {
// This is only valid if :ref:`resolver_name
// <envoy_api_field_core.SocketAddress.resolver_name>` is specified below and the
// named resolver is capable of named port resolution.
NamedPort string `protobuf:"bytes,4,opt,name=named_port,json=namedPort,proto3,oneof"`
}
func (*SocketAddress_PortValue) isSocketAddress_PortSpecifier() {}
func (*SocketAddress_NamedPort) isSocketAddress_PortSpecifier() {}
type TcpKeepalive struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Maximum number of keepalive probes to send without response before deciding
// the connection is dead. Default is to use the OS level configuration (unless
// overridden, Linux defaults to 9.)
KeepaliveProbes *wrappers.UInt32Value `protobuf:"bytes,1,opt,name=keepalive_probes,json=keepaliveProbes,proto3" json:"keepalive_probes,omitempty"`
// The number of seconds a connection needs to be idle before keep-alive probes
// start being sent. Default is to use the OS level configuration (unless
// overridden, Linux defaults to 7200s (i.e., 2 hours.)
KeepaliveTime *wrappers.UInt32Value `protobuf:"bytes,2,opt,name=keepalive_time,json=keepaliveTime,proto3" json:"keepalive_time,omitempty"`
// The number of seconds between keep-alive probes. Default is to use the OS
// level configuration (unless overridden, Linux defaults to 75s.)
KeepaliveInterval *wrappers.UInt32Value `protobuf:"bytes,3,opt,name=keepalive_interval,json=keepaliveInterval,proto3" json:"keepalive_interval,omitempty"`
}
func (x *TcpKeepalive) Reset() {
*x = TcpKeepalive{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TcpKeepalive) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TcpKeepalive) ProtoMessage() {}
func (x *TcpKeepalive) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TcpKeepalive.ProtoReflect.Descriptor instead.
func (*TcpKeepalive) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{2}
}
func (x *TcpKeepalive) GetKeepaliveProbes() *wrappers.UInt32Value {
if x != nil {
return x.KeepaliveProbes
}
return nil
}
func (x *TcpKeepalive) GetKeepaliveTime() *wrappers.UInt32Value {
if x != nil {
return x.KeepaliveTime
}
return nil
}
func (x *TcpKeepalive) GetKeepaliveInterval() *wrappers.UInt32Value {
if x != nil {
return x.KeepaliveInterval
}
return nil
}
type BindConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The address to bind to when creating a socket.
SourceAddress *SocketAddress `protobuf:"bytes,1,opt,name=source_address,json=sourceAddress,proto3" json:"source_address,omitempty"`
// Whether to set the *IP_FREEBIND* option when creating the socket. When this
// flag is set to true, allows the :ref:`source_address
// <envoy_api_field_UpstreamBindConfig.source_address>` to be an IP address
// that is not configured on the system running Envoy. When this flag is set
// to false, the option *IP_FREEBIND* is disabled on the socket. When this
// flag is not set (default), the socket is not modified, i.e. the option is
// neither enabled nor disabled.
Freebind *wrappers.BoolValue `protobuf:"bytes,2,opt,name=freebind,proto3" json:"freebind,omitempty"`
// Additional socket options that may not be present in Envoy source code or
// precompiled binaries.
SocketOptions []*SocketOption `protobuf:"bytes,3,rep,name=socket_options,json=socketOptions,proto3" json:"socket_options,omitempty"`
}
func (x *BindConfig) Reset() {
*x = BindConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BindConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BindConfig) ProtoMessage() {}
func (x *BindConfig) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BindConfig.ProtoReflect.Descriptor instead.
func (*BindConfig) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{3}
}
func (x *BindConfig) GetSourceAddress() *SocketAddress {
if x != nil {
return x.SourceAddress
}
return nil
}
func (x *BindConfig) GetFreebind() *wrappers.BoolValue {
if x != nil {
return x.Freebind
}
return nil
}
func (x *BindConfig) GetSocketOptions() []*SocketOption {
if x != nil {
return x.SocketOptions
}
return nil
}
// Addresses specify either a logical or physical address and port, which are
// used to tell Envoy where to bind/listen, connect to upstream and find
// management servers.
type Address struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Address:
// *Address_SocketAddress
// *Address_Pipe
Address isAddress_Address `protobuf_oneof:"address"`
}
func (x *Address) Reset() {
*x = Address{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Address) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Address) ProtoMessage() {}
func (x *Address) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Address.ProtoReflect.Descriptor instead.
func (*Address) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{4}
}
func (m *Address) GetAddress() isAddress_Address {
if m != nil {
return m.Address
}
return nil
}
func (x *Address) GetSocketAddress() *SocketAddress {
if x, ok := x.GetAddress().(*Address_SocketAddress); ok {
return x.SocketAddress
}
return nil
}
func (x *Address) GetPipe() *Pipe {
if x, ok := x.GetAddress().(*Address_Pipe); ok {
return x.Pipe
}
return nil
}
type isAddress_Address interface {
isAddress_Address()
}
type Address_SocketAddress struct {
SocketAddress *SocketAddress `protobuf:"bytes,1,opt,name=socket_address,json=socketAddress,proto3,oneof"`
}
type Address_Pipe struct {
Pipe *Pipe `protobuf:"bytes,2,opt,name=pipe,proto3,oneof"`
}
func (*Address_SocketAddress) isAddress_Address() {}
func (*Address_Pipe) isAddress_Address() {}
// CidrRange specifies an IP Address and a prefix length to construct
// the subnet mask for a `CIDR <https://tools.ietf.org/html/rfc4632>`_ range.
type CidrRange struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// IPv4 or IPv6 address, e.g. ``192.0.0.0`` or ``2001:db8::``.
AddressPrefix string `protobuf:"bytes,1,opt,name=address_prefix,json=addressPrefix,proto3" json:"address_prefix,omitempty"`
// Length of prefix, e.g. 0, 32. Defaults to 0 when unset.
PrefixLen *wrappers.UInt32Value `protobuf:"bytes,2,opt,name=prefix_len,json=prefixLen,proto3" json:"prefix_len,omitempty"`
}
func (x *CidrRange) Reset() {
*x = CidrRange{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CidrRange) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CidrRange) ProtoMessage() {}
func (x *CidrRange) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_address_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CidrRange.ProtoReflect.Descriptor instead.
func (*CidrRange) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_address_proto_rawDescGZIP(), []int{5}
}
func (x *CidrRange) GetAddressPrefix() string {
if x != nil {
return x.AddressPrefix
}
return ""
}
func (x *CidrRange) GetPrefixLen() *wrappers.UInt32Value {
if x != nil {
return x.PrefixLen
}
return nil
}
var File_envoy_api_v2_core_address_proto protoreflect.FileDescriptor
var file_envoy_api_v2_core_address_proto_rawDesc = []byte{
0x0a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e,
0x63, 0x6f, 0x72, 0x65, 0x1a, 0x25, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f,
0x76, 0x32, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61,
0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70,
0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69,
0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70,
0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74,
0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69,
0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x22, 0x41, 0x0a, 0x04, 0x50, 0x69, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x04, 0x70,
0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02,
0x20, 0x01, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x2a, 0x03, 0x18, 0xff, 0x03,
0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0xcb, 0x02, 0x0a, 0x0d, 0x53, 0x6f, 0x63, 0x6b, 0x65,
0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53,
0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52,
0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x21, 0x0a, 0x07, 0x61, 0x64, 0x64,
0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72,
0x02, 0x20, 0x01, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2a, 0x0a, 0x0a,
0x70, 0x6f, 0x72, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
0x42, 0x09, 0xfa, 0x42, 0x06, 0x2a, 0x04, 0x18, 0xff, 0xff, 0x03, 0x48, 0x00, 0x52, 0x09, 0x70,
0x6f, 0x72, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65,
0x64, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09,
0x6e, 0x61, 0x6d, 0x65, 0x64, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73,
0x6f, 0x6c, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f,
0x0a, 0x0b, 0x69, 0x70, 0x76, 0x34, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x18, 0x06, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x70, 0x76, 0x34, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x22,
0x1c, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x07, 0x0a, 0x03, 0x54,
0x43, 0x50, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x55, 0x44, 0x50, 0x10, 0x01, 0x42, 0x15, 0x0a,
0x0e, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12,
0x03, 0xf8, 0x42, 0x01, 0x22, 0xe9, 0x01, 0x0a, 0x0c, 0x54, 0x63, 0x70, 0x4b, 0x65, 0x65, 0x70,
0x61, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x47, 0x0a, 0x10, 0x6b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69,
0x76, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x6b,
0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x73, 0x12, 0x43,
0x0a, 0x0e, 0x6b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x6b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x54,
0x69, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x12, 0x6b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65,
0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x6b,
0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c,
0x22, 0xdf, 0x01, 0x0a, 0x0a, 0x42, 0x69, 0x6e, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
0x51, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x6f, 0x63, 0x6b,
0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01,
0x02, 0x10, 0x01, 0x52, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65,
0x73, 0x73, 0x12, 0x36, 0x0a, 0x08, 0x66, 0x72, 0x65, 0x65, 0x62, 0x69, 0x6e, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x52, 0x08, 0x66, 0x72, 0x65, 0x65, 0x62, 0x69, 0x6e, 0x64, 0x12, 0x46, 0x0a, 0x0e, 0x73, 0x6f,
0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76,
0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x22, 0x93, 0x01, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x49,
0x0a, 0x0e, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65,
0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x0d, 0x73, 0x6f, 0x63, 0x6b,
0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2d, 0x0a, 0x04, 0x70, 0x69, 0x70,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x69, 0x70, 0x65,
0x48, 0x00, 0x52, 0x04, 0x70, 0x69, 0x70, 0x65, 0x42, 0x0e, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72,
0x65, 0x73, 0x73, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0x82, 0x01, 0x0a, 0x09, 0x43, 0x69, 0x64,
0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x0e, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07,
0xfa, 0x42, 0x04, 0x72, 0x02, 0x20, 0x01, 0x52, 0x0d, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e,
0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x2a, 0x03, 0x18,
0x80, 0x01, 0x52, 0x09, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4c, 0x65, 0x6e, 0x42, 0x55, 0x0a,
0x1f, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65,
0x42, 0x0c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x16, 0x12, 0x14, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1,
0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_core_address_proto_rawDescOnce sync.Once
file_envoy_api_v2_core_address_proto_rawDescData = file_envoy_api_v2_core_address_proto_rawDesc
)
func file_envoy_api_v2_core_address_proto_rawDescGZIP() []byte {
file_envoy_api_v2_core_address_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_core_address_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_core_address_proto_rawDescData)
})
return file_envoy_api_v2_core_address_proto_rawDescData
}
var file_envoy_api_v2_core_address_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_envoy_api_v2_core_address_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_envoy_api_v2_core_address_proto_goTypes = []interface{}{
(SocketAddress_Protocol)(0), // 0: envoy.api.v2.core.SocketAddress.Protocol
(*Pipe)(nil), // 1: envoy.api.v2.core.Pipe
(*SocketAddress)(nil), // 2: envoy.api.v2.core.SocketAddress
(*TcpKeepalive)(nil), // 3: envoy.api.v2.core.TcpKeepalive
(*BindConfig)(nil), // 4: envoy.api.v2.core.BindConfig
(*Address)(nil), // 5: envoy.api.v2.core.Address
(*CidrRange)(nil), // 6: envoy.api.v2.core.CidrRange
(*wrappers.UInt32Value)(nil), // 7: google.protobuf.UInt32Value
(*wrappers.BoolValue)(nil), // 8: google.protobuf.BoolValue
(*SocketOption)(nil), // 9: envoy.api.v2.core.SocketOption
}
var file_envoy_api_v2_core_address_proto_depIdxs = []int32{
0, // 0: envoy.api.v2.core.SocketAddress.protocol:type_name -> envoy.api.v2.core.SocketAddress.Protocol
7, // 1: envoy.api.v2.core.TcpKeepalive.keepalive_probes:type_name -> google.protobuf.UInt32Value
7, // 2: envoy.api.v2.core.TcpKeepalive.keepalive_time:type_name -> google.protobuf.UInt32Value
7, // 3: envoy.api.v2.core.TcpKeepalive.keepalive_interval:type_name -> google.protobuf.UInt32Value
2, // 4: envoy.api.v2.core.BindConfig.source_address:type_name -> envoy.api.v2.core.SocketAddress
8, // 5: envoy.api.v2.core.BindConfig.freebind:type_name -> google.protobuf.BoolValue
9, // 6: envoy.api.v2.core.BindConfig.socket_options:type_name -> envoy.api.v2.core.SocketOption
2, // 7: envoy.api.v2.core.Address.socket_address:type_name -> envoy.api.v2.core.SocketAddress
1, // 8: envoy.api.v2.core.Address.pipe:type_name -> envoy.api.v2.core.Pipe
7, // 9: envoy.api.v2.core.CidrRange.prefix_len:type_name -> google.protobuf.UInt32Value
10, // [10:10] is the sub-list for method output_type
10, // [10:10] is the sub-list for method input_type
10, // [10:10] is the sub-list for extension type_name
10, // [10:10] is the sub-list for extension extendee
0, // [0:10] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_core_address_proto_init() }
func file_envoy_api_v2_core_address_proto_init() {
if File_envoy_api_v2_core_address_proto != nil {
return
}
file_envoy_api_v2_core_socket_option_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_core_address_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Pipe); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_address_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SocketAddress); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_address_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TcpKeepalive); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_address_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BindConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_address_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Address); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_address_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CidrRange); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_envoy_api_v2_core_address_proto_msgTypes[1].OneofWrappers = []interface{}{
(*SocketAddress_PortValue)(nil),
(*SocketAddress_NamedPort)(nil),
}
file_envoy_api_v2_core_address_proto_msgTypes[4].OneofWrappers = []interface{}{
(*Address_SocketAddress)(nil),
(*Address_Pipe)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_core_address_proto_rawDesc,
NumEnums: 1,
NumMessages: 6,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_core_address_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_core_address_proto_depIdxs,
EnumInfos: file_envoy_api_v2_core_address_proto_enumTypes,
MessageInfos: file_envoy_api_v2_core_address_proto_msgTypes,
}.Build()
File_envoy_api_v2_core_address_proto = out.File
file_envoy_api_v2_core_address_proto_rawDesc = nil
file_envoy_api_v2_core_address_proto_goTypes = nil
file_envoy_api_v2_core_address_proto_depIdxs = nil
}

View file

@ -0,0 +1,598 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/core/address.proto
package envoy_api_v2_core
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on Pipe with the rules defined in the proto
// definition for this message. If any rules are violated, an error is returned.
func (m *Pipe) Validate() error {
if m == nil {
return nil
}
if len(m.GetPath()) < 1 {
return PipeValidationError{
field: "Path",
reason: "value length must be at least 1 bytes",
}
}
if m.GetMode() > 511 {
return PipeValidationError{
field: "Mode",
reason: "value must be less than or equal to 511",
}
}
return nil
}
// PipeValidationError is the validation error returned by Pipe.Validate if the
// designated constraints aren't met.
type PipeValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e PipeValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e PipeValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e PipeValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e PipeValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e PipeValidationError) ErrorName() string { return "PipeValidationError" }
// Error satisfies the builtin error interface
func (e PipeValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sPipe.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = PipeValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = PipeValidationError{}
// Validate checks the field values on SocketAddress with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *SocketAddress) Validate() error {
if m == nil {
return nil
}
if _, ok := SocketAddress_Protocol_name[int32(m.GetProtocol())]; !ok {
return SocketAddressValidationError{
field: "Protocol",
reason: "value must be one of the defined enum values",
}
}
if len(m.GetAddress()) < 1 {
return SocketAddressValidationError{
field: "Address",
reason: "value length must be at least 1 bytes",
}
}
// no validation rules for ResolverName
// no validation rules for Ipv4Compat
switch m.PortSpecifier.(type) {
case *SocketAddress_PortValue:
if m.GetPortValue() > 65535 {
return SocketAddressValidationError{
field: "PortValue",
reason: "value must be less than or equal to 65535",
}
}
case *SocketAddress_NamedPort:
// no validation rules for NamedPort
default:
return SocketAddressValidationError{
field: "PortSpecifier",
reason: "value is required",
}
}
return nil
}
// SocketAddressValidationError is the validation error returned by
// SocketAddress.Validate if the designated constraints aren't met.
type SocketAddressValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e SocketAddressValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e SocketAddressValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e SocketAddressValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e SocketAddressValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e SocketAddressValidationError) ErrorName() string { return "SocketAddressValidationError" }
// Error satisfies the builtin error interface
func (e SocketAddressValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sSocketAddress.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = SocketAddressValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = SocketAddressValidationError{}
// Validate checks the field values on TcpKeepalive with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *TcpKeepalive) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetKeepaliveProbes()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TcpKeepaliveValidationError{
field: "KeepaliveProbes",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetKeepaliveTime()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TcpKeepaliveValidationError{
field: "KeepaliveTime",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetKeepaliveInterval()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return TcpKeepaliveValidationError{
field: "KeepaliveInterval",
reason: "embedded message failed validation",
cause: err,
}
}
}
return nil
}
// TcpKeepaliveValidationError is the validation error returned by
// TcpKeepalive.Validate if the designated constraints aren't met.
type TcpKeepaliveValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e TcpKeepaliveValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e TcpKeepaliveValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e TcpKeepaliveValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e TcpKeepaliveValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e TcpKeepaliveValidationError) ErrorName() string { return "TcpKeepaliveValidationError" }
// Error satisfies the builtin error interface
func (e TcpKeepaliveValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sTcpKeepalive.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = TcpKeepaliveValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = TcpKeepaliveValidationError{}
// Validate checks the field values on BindConfig with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *BindConfig) Validate() error {
if m == nil {
return nil
}
if m.GetSourceAddress() == nil {
return BindConfigValidationError{
field: "SourceAddress",
reason: "value is required",
}
}
if v, ok := interface{}(m.GetSourceAddress()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return BindConfigValidationError{
field: "SourceAddress",
reason: "embedded message failed validation",
cause: err,
}
}
}
if v, ok := interface{}(m.GetFreebind()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return BindConfigValidationError{
field: "Freebind",
reason: "embedded message failed validation",
cause: err,
}
}
}
for idx, item := range m.GetSocketOptions() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return BindConfigValidationError{
field: fmt.Sprintf("SocketOptions[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// BindConfigValidationError is the validation error returned by
// BindConfig.Validate if the designated constraints aren't met.
type BindConfigValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e BindConfigValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e BindConfigValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e BindConfigValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e BindConfigValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e BindConfigValidationError) ErrorName() string { return "BindConfigValidationError" }
// Error satisfies the builtin error interface
func (e BindConfigValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sBindConfig.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = BindConfigValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = BindConfigValidationError{}
// Validate checks the field values on Address with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *Address) Validate() error {
if m == nil {
return nil
}
switch m.Address.(type) {
case *Address_SocketAddress:
if v, ok := interface{}(m.GetSocketAddress()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return AddressValidationError{
field: "SocketAddress",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *Address_Pipe:
if v, ok := interface{}(m.GetPipe()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return AddressValidationError{
field: "Pipe",
reason: "embedded message failed validation",
cause: err,
}
}
}
default:
return AddressValidationError{
field: "Address",
reason: "value is required",
}
}
return nil
}
// AddressValidationError is the validation error returned by Address.Validate
// if the designated constraints aren't met.
type AddressValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e AddressValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e AddressValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e AddressValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e AddressValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e AddressValidationError) ErrorName() string { return "AddressValidationError" }
// Error satisfies the builtin error interface
func (e AddressValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sAddress.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = AddressValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = AddressValidationError{}
// Validate checks the field values on CidrRange with the rules defined in the
// proto definition for this message. If any rules are violated, an error is returned.
func (m *CidrRange) Validate() error {
if m == nil {
return nil
}
if len(m.GetAddressPrefix()) < 1 {
return CidrRangeValidationError{
field: "AddressPrefix",
reason: "value length must be at least 1 bytes",
}
}
if wrapper := m.GetPrefixLen(); wrapper != nil {
if wrapper.GetValue() > 128 {
return CidrRangeValidationError{
field: "PrefixLen",
reason: "value must be less than or equal to 128",
}
}
}
return nil
}
// CidrRangeValidationError is the validation error returned by
// CidrRange.Validate if the designated constraints aren't met.
type CidrRangeValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e CidrRangeValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e CidrRangeValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e CidrRangeValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e CidrRangeValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e CidrRangeValidationError) ErrorName() string { return "CidrRangeValidationError" }
// Error satisfies the builtin error interface
func (e CidrRangeValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sCidrRange.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = CidrRangeValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = CidrRangeValidationError{}

View file

@ -0,0 +1,192 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/core/backoff.proto
package envoy_api_v2_core
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
duration "github.com/golang/protobuf/ptypes/duration"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Configuration defining a jittered exponential back off strategy.
type BackoffStrategy struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The base interval to be used for the next back off computation. It should
// be greater than zero and less than or equal to :ref:`max_interval
// <envoy_api_field_core.BackoffStrategy.max_interval>`.
BaseInterval *duration.Duration `protobuf:"bytes,1,opt,name=base_interval,json=baseInterval,proto3" json:"base_interval,omitempty"`
// Specifies the maximum interval between retries. This parameter is optional,
// but must be greater than or equal to the :ref:`base_interval
// <envoy_api_field_core.BackoffStrategy.base_interval>` if set. The default
// is 10 times the :ref:`base_interval
// <envoy_api_field_core.BackoffStrategy.base_interval>`.
MaxInterval *duration.Duration `protobuf:"bytes,2,opt,name=max_interval,json=maxInterval,proto3" json:"max_interval,omitempty"`
}
func (x *BackoffStrategy) Reset() {
*x = BackoffStrategy{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_backoff_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BackoffStrategy) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BackoffStrategy) ProtoMessage() {}
func (x *BackoffStrategy) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_backoff_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BackoffStrategy.ProtoReflect.Descriptor instead.
func (*BackoffStrategy) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_backoff_proto_rawDescGZIP(), []int{0}
}
func (x *BackoffStrategy) GetBaseInterval() *duration.Duration {
if x != nil {
return x.BaseInterval
}
return nil
}
func (x *BackoffStrategy) GetMaxInterval() *duration.Duration {
if x != nil {
return x.MaxInterval
}
return nil
}
var File_envoy_api_v2_core_backoff_proto protoreflect.FileDescriptor
var file_envoy_api_v2_core_backoff_proto_rawDesc = []byte{
0x0a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e,
0x63, 0x6f, 0x72, 0x65, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61,
0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa9, 0x01, 0x0a,
0x0f, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
0x12, 0x4e, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61,
0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x42, 0x0e, 0xfa, 0x42, 0x0b, 0xaa, 0x01, 0x08, 0x08, 0x01, 0x32, 0x04, 0x10, 0xc0,
0x84, 0x3d, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c,
0x12, 0x46, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0xaa, 0x01, 0x02, 0x2a, 0x00, 0x52, 0x0b, 0x6d, 0x61, 0x78,
0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x42, 0x55, 0x0a, 0x1f, 0x69, 0x6f, 0x2e, 0x65,
0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x0c, 0x42, 0x61, 0x63,
0x6b, 0x6f, 0x66, 0x66, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xf2, 0x98, 0xfe, 0x8f, 0x05,
0x16, 0x12, 0x14, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_core_backoff_proto_rawDescOnce sync.Once
file_envoy_api_v2_core_backoff_proto_rawDescData = file_envoy_api_v2_core_backoff_proto_rawDesc
)
func file_envoy_api_v2_core_backoff_proto_rawDescGZIP() []byte {
file_envoy_api_v2_core_backoff_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_core_backoff_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_core_backoff_proto_rawDescData)
})
return file_envoy_api_v2_core_backoff_proto_rawDescData
}
var file_envoy_api_v2_core_backoff_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_api_v2_core_backoff_proto_goTypes = []interface{}{
(*BackoffStrategy)(nil), // 0: envoy.api.v2.core.BackoffStrategy
(*duration.Duration)(nil), // 1: google.protobuf.Duration
}
var file_envoy_api_v2_core_backoff_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.core.BackoffStrategy.base_interval:type_name -> google.protobuf.Duration
1, // 1: envoy.api.v2.core.BackoffStrategy.max_interval:type_name -> google.protobuf.Duration
2, // [2:2] is the sub-list for method output_type
2, // [2:2] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_core_backoff_proto_init() }
func file_envoy_api_v2_core_backoff_proto_init() {
if File_envoy_api_v2_core_backoff_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_core_backoff_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BackoffStrategy); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_core_backoff_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_core_backoff_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_core_backoff_proto_depIdxs,
MessageInfos: file_envoy_api_v2_core_backoff_proto_msgTypes,
}.Build()
File_envoy_api_v2_core_backoff_proto = out.File
file_envoy_api_v2_core_backoff_proto_rawDesc = nil
file_envoy_api_v2_core_backoff_proto_goTypes = nil
file_envoy_api_v2_core_backoff_proto_depIdxs = nil
}

View file

@ -0,0 +1,148 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/core/backoff.proto
package envoy_api_v2_core
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on BackoffStrategy with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *BackoffStrategy) Validate() error {
if m == nil {
return nil
}
if m.GetBaseInterval() == nil {
return BackoffStrategyValidationError{
field: "BaseInterval",
reason: "value is required",
}
}
if d := m.GetBaseInterval(); d != nil {
dur, err := ptypes.Duration(d)
if err != nil {
return BackoffStrategyValidationError{
field: "BaseInterval",
reason: "value is not a valid duration",
cause: err,
}
}
gte := time.Duration(0*time.Second + 1000000*time.Nanosecond)
if dur < gte {
return BackoffStrategyValidationError{
field: "BaseInterval",
reason: "value must be greater than or equal to 1ms",
}
}
}
if d := m.GetMaxInterval(); d != nil {
dur, err := ptypes.Duration(d)
if err != nil {
return BackoffStrategyValidationError{
field: "MaxInterval",
reason: "value is not a valid duration",
cause: err,
}
}
gt := time.Duration(0*time.Second + 0*time.Nanosecond)
if dur <= gt {
return BackoffStrategyValidationError{
field: "MaxInterval",
reason: "value must be greater than 0s",
}
}
}
return nil
}
// BackoffStrategyValidationError is the validation error returned by
// BackoffStrategy.Validate if the designated constraints aren't met.
type BackoffStrategyValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e BackoffStrategyValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e BackoffStrategyValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e BackoffStrategyValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e BackoffStrategyValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e BackoffStrategyValidationError) ErrorName() string { return "BackoffStrategyValidationError" }
// Error satisfies the builtin error interface
func (e BackoffStrategyValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sBackoffStrategy.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = BackoffStrategyValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = BackoffStrategyValidationError{}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,866 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/core/config_source.proto
package envoy_api_v2_core
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/go-control-plane/envoy/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
duration "github.com/golang/protobuf/ptypes/duration"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// xDS API version. This is used to describe both resource and transport
// protocol versions (in distinct configuration fields).
type ApiVersion int32
const (
// When not specified, we assume v2, to ease migration to Envoy's stable API
// versioning. If a client does not support v2 (e.g. due to deprecation), this
// is an invalid value.
//
// Deprecated: Do not use.
ApiVersion_AUTO ApiVersion = 0
// Use xDS v2 API.
//
// Deprecated: Do not use.
ApiVersion_V2 ApiVersion = 1
// Use xDS v3 API.
ApiVersion_V3 ApiVersion = 2
)
// Enum value maps for ApiVersion.
var (
ApiVersion_name = map[int32]string{
0: "AUTO",
1: "V2",
2: "V3",
}
ApiVersion_value = map[string]int32{
"AUTO": 0,
"V2": 1,
"V3": 2,
}
)
func (x ApiVersion) Enum() *ApiVersion {
p := new(ApiVersion)
*p = x
return p
}
func (x ApiVersion) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (ApiVersion) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_api_v2_core_config_source_proto_enumTypes[0].Descriptor()
}
func (ApiVersion) Type() protoreflect.EnumType {
return &file_envoy_api_v2_core_config_source_proto_enumTypes[0]
}
func (x ApiVersion) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use ApiVersion.Descriptor instead.
func (ApiVersion) EnumDescriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{0}
}
// APIs may be fetched via either REST or gRPC.
type ApiConfigSource_ApiType int32
const (
// Ideally this would be 'reserved 0' but one can't reserve the default
// value. Instead we throw an exception if this is ever used.
//
// Deprecated: Do not use.
ApiConfigSource_UNSUPPORTED_REST_LEGACY ApiConfigSource_ApiType = 0
// REST-JSON v2 API. The `canonical JSON encoding
// <https://developers.google.com/protocol-buffers/docs/proto3#json>`_ for
// the v2 protos is used.
ApiConfigSource_REST ApiConfigSource_ApiType = 1
// gRPC v2 API.
ApiConfigSource_GRPC ApiConfigSource_ApiType = 2
// Using the delta xDS gRPC service, i.e. DeltaDiscovery{Request,Response}
// rather than Discovery{Request,Response}. Rather than sending Envoy the entire state
// with every update, the xDS server only sends what has changed since the last update.
ApiConfigSource_DELTA_GRPC ApiConfigSource_ApiType = 3
)
// Enum value maps for ApiConfigSource_ApiType.
var (
ApiConfigSource_ApiType_name = map[int32]string{
0: "UNSUPPORTED_REST_LEGACY",
1: "REST",
2: "GRPC",
3: "DELTA_GRPC",
}
ApiConfigSource_ApiType_value = map[string]int32{
"UNSUPPORTED_REST_LEGACY": 0,
"REST": 1,
"GRPC": 2,
"DELTA_GRPC": 3,
}
)
func (x ApiConfigSource_ApiType) Enum() *ApiConfigSource_ApiType {
p := new(ApiConfigSource_ApiType)
*p = x
return p
}
func (x ApiConfigSource_ApiType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (ApiConfigSource_ApiType) Descriptor() protoreflect.EnumDescriptor {
return file_envoy_api_v2_core_config_source_proto_enumTypes[1].Descriptor()
}
func (ApiConfigSource_ApiType) Type() protoreflect.EnumType {
return &file_envoy_api_v2_core_config_source_proto_enumTypes[1]
}
func (x ApiConfigSource_ApiType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use ApiConfigSource_ApiType.Descriptor instead.
func (ApiConfigSource_ApiType) EnumDescriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{0, 0}
}
// API configuration source. This identifies the API type and cluster that Envoy
// will use to fetch an xDS API.
// [#next-free-field: 9]
type ApiConfigSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// API type (gRPC, REST, delta gRPC)
ApiType ApiConfigSource_ApiType `protobuf:"varint,1,opt,name=api_type,json=apiType,proto3,enum=envoy.api.v2.core.ApiConfigSource_ApiType" json:"api_type,omitempty"`
// API version for xDS transport protocol. This describes the xDS gRPC/REST
// endpoint and version of [Delta]DiscoveryRequest/Response used on the wire.
TransportApiVersion ApiVersion `protobuf:"varint,8,opt,name=transport_api_version,json=transportApiVersion,proto3,enum=envoy.api.v2.core.ApiVersion" json:"transport_api_version,omitempty"`
// Cluster names should be used only with REST. If > 1
// cluster is defined, clusters will be cycled through if any kind of failure
// occurs.
//
// .. note::
//
// The cluster with name ``cluster_name`` must be statically defined and its
// type must not be ``EDS``.
ClusterNames []string `protobuf:"bytes,2,rep,name=cluster_names,json=clusterNames,proto3" json:"cluster_names,omitempty"`
// Multiple gRPC services be provided for GRPC. If > 1 cluster is defined,
// services will be cycled through if any kind of failure occurs.
GrpcServices []*GrpcService `protobuf:"bytes,4,rep,name=grpc_services,json=grpcServices,proto3" json:"grpc_services,omitempty"`
// For REST APIs, the delay between successive polls.
RefreshDelay *duration.Duration `protobuf:"bytes,3,opt,name=refresh_delay,json=refreshDelay,proto3" json:"refresh_delay,omitempty"`
// For REST APIs, the request timeout. If not set, a default value of 1s will be used.
RequestTimeout *duration.Duration `protobuf:"bytes,5,opt,name=request_timeout,json=requestTimeout,proto3" json:"request_timeout,omitempty"`
// For GRPC APIs, the rate limit settings. If present, discovery requests made by Envoy will be
// rate limited.
RateLimitSettings *RateLimitSettings `protobuf:"bytes,6,opt,name=rate_limit_settings,json=rateLimitSettings,proto3" json:"rate_limit_settings,omitempty"`
// Skip the node identifier in subsequent discovery requests for streaming gRPC config types.
SetNodeOnFirstMessageOnly bool `protobuf:"varint,7,opt,name=set_node_on_first_message_only,json=setNodeOnFirstMessageOnly,proto3" json:"set_node_on_first_message_only,omitempty"`
}
func (x *ApiConfigSource) Reset() {
*x = ApiConfigSource{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApiConfigSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApiConfigSource) ProtoMessage() {}
func (x *ApiConfigSource) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ApiConfigSource.ProtoReflect.Descriptor instead.
func (*ApiConfigSource) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{0}
}
func (x *ApiConfigSource) GetApiType() ApiConfigSource_ApiType {
if x != nil {
return x.ApiType
}
return ApiConfigSource_UNSUPPORTED_REST_LEGACY
}
func (x *ApiConfigSource) GetTransportApiVersion() ApiVersion {
if x != nil {
return x.TransportApiVersion
}
return ApiVersion_AUTO
}
func (x *ApiConfigSource) GetClusterNames() []string {
if x != nil {
return x.ClusterNames
}
return nil
}
func (x *ApiConfigSource) GetGrpcServices() []*GrpcService {
if x != nil {
return x.GrpcServices
}
return nil
}
func (x *ApiConfigSource) GetRefreshDelay() *duration.Duration {
if x != nil {
return x.RefreshDelay
}
return nil
}
func (x *ApiConfigSource) GetRequestTimeout() *duration.Duration {
if x != nil {
return x.RequestTimeout
}
return nil
}
func (x *ApiConfigSource) GetRateLimitSettings() *RateLimitSettings {
if x != nil {
return x.RateLimitSettings
}
return nil
}
func (x *ApiConfigSource) GetSetNodeOnFirstMessageOnly() bool {
if x != nil {
return x.SetNodeOnFirstMessageOnly
}
return false
}
// Aggregated Discovery Service (ADS) options. This is currently empty, but when
// set in :ref:`ConfigSource <envoy_api_msg_core.ConfigSource>` can be used to
// specify that ADS is to be used.
type AggregatedConfigSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *AggregatedConfigSource) Reset() {
*x = AggregatedConfigSource{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AggregatedConfigSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AggregatedConfigSource) ProtoMessage() {}
func (x *AggregatedConfigSource) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AggregatedConfigSource.ProtoReflect.Descriptor instead.
func (*AggregatedConfigSource) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{1}
}
// [#not-implemented-hide:]
// Self-referencing config source options. This is currently empty, but when
// set in :ref:`ConfigSource <envoy_api_msg_core.ConfigSource>` can be used to
// specify that other data can be obtained from the same server.
type SelfConfigSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// API version for xDS transport protocol. This describes the xDS gRPC/REST
// endpoint and version of [Delta]DiscoveryRequest/Response used on the wire.
TransportApiVersion ApiVersion `protobuf:"varint,1,opt,name=transport_api_version,json=transportApiVersion,proto3,enum=envoy.api.v2.core.ApiVersion" json:"transport_api_version,omitempty"`
}
func (x *SelfConfigSource) Reset() {
*x = SelfConfigSource{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SelfConfigSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SelfConfigSource) ProtoMessage() {}
func (x *SelfConfigSource) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SelfConfigSource.ProtoReflect.Descriptor instead.
func (*SelfConfigSource) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{2}
}
func (x *SelfConfigSource) GetTransportApiVersion() ApiVersion {
if x != nil {
return x.TransportApiVersion
}
return ApiVersion_AUTO
}
// Rate Limit settings to be applied for discovery requests made by Envoy.
type RateLimitSettings struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Maximum number of tokens to be used for rate limiting discovery request calls. If not set, a
// default value of 100 will be used.
MaxTokens *wrappers.UInt32Value `protobuf:"bytes,1,opt,name=max_tokens,json=maxTokens,proto3" json:"max_tokens,omitempty"`
// Rate at which tokens will be filled per second. If not set, a default fill rate of 10 tokens
// per second will be used.
FillRate *wrappers.DoubleValue `protobuf:"bytes,2,opt,name=fill_rate,json=fillRate,proto3" json:"fill_rate,omitempty"`
}
func (x *RateLimitSettings) Reset() {
*x = RateLimitSettings{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RateLimitSettings) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RateLimitSettings) ProtoMessage() {}
func (x *RateLimitSettings) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RateLimitSettings.ProtoReflect.Descriptor instead.
func (*RateLimitSettings) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{3}
}
func (x *RateLimitSettings) GetMaxTokens() *wrappers.UInt32Value {
if x != nil {
return x.MaxTokens
}
return nil
}
func (x *RateLimitSettings) GetFillRate() *wrappers.DoubleValue {
if x != nil {
return x.FillRate
}
return nil
}
// Configuration for :ref:`listeners <config_listeners>`, :ref:`clusters
// <config_cluster_manager>`, :ref:`routes
// <envoy_api_msg_RouteConfiguration>`, :ref:`endpoints
// <arch_overview_service_discovery>` etc. may either be sourced from the
// filesystem or from an xDS API source. Filesystem configs are watched with
// inotify for updates.
// [#next-free-field: 7]
type ConfigSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to ConfigSourceSpecifier:
// *ConfigSource_Path
// *ConfigSource_ApiConfigSource
// *ConfigSource_Ads
// *ConfigSource_Self
ConfigSourceSpecifier isConfigSource_ConfigSourceSpecifier `protobuf_oneof:"config_source_specifier"`
// When this timeout is specified, Envoy will wait no longer than the specified time for first
// config response on this xDS subscription during the :ref:`initialization process
// <arch_overview_initialization>`. After reaching the timeout, Envoy will move to the next
// initialization phase, even if the first config is not delivered yet. The timer is activated
// when the xDS API subscription starts, and is disarmed on first config update or on error. 0
// means no timeout - Envoy will wait indefinitely for the first xDS config (unless another
// timeout applies). The default is 15s.
InitialFetchTimeout *duration.Duration `protobuf:"bytes,4,opt,name=initial_fetch_timeout,json=initialFetchTimeout,proto3" json:"initial_fetch_timeout,omitempty"`
// API version for xDS resources. This implies the type URLs that the client
// will request for resources and the resource type that the client will in
// turn expect to be delivered.
ResourceApiVersion ApiVersion `protobuf:"varint,6,opt,name=resource_api_version,json=resourceApiVersion,proto3,enum=envoy.api.v2.core.ApiVersion" json:"resource_api_version,omitempty"`
}
func (x *ConfigSource) Reset() {
*x = ConfigSource{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ConfigSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ConfigSource) ProtoMessage() {}
func (x *ConfigSource) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_config_source_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ConfigSource.ProtoReflect.Descriptor instead.
func (*ConfigSource) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_config_source_proto_rawDescGZIP(), []int{4}
}
func (m *ConfigSource) GetConfigSourceSpecifier() isConfigSource_ConfigSourceSpecifier {
if m != nil {
return m.ConfigSourceSpecifier
}
return nil
}
func (x *ConfigSource) GetPath() string {
if x, ok := x.GetConfigSourceSpecifier().(*ConfigSource_Path); ok {
return x.Path
}
return ""
}
func (x *ConfigSource) GetApiConfigSource() *ApiConfigSource {
if x, ok := x.GetConfigSourceSpecifier().(*ConfigSource_ApiConfigSource); ok {
return x.ApiConfigSource
}
return nil
}
func (x *ConfigSource) GetAds() *AggregatedConfigSource {
if x, ok := x.GetConfigSourceSpecifier().(*ConfigSource_Ads); ok {
return x.Ads
}
return nil
}
func (x *ConfigSource) GetSelf() *SelfConfigSource {
if x, ok := x.GetConfigSourceSpecifier().(*ConfigSource_Self); ok {
return x.Self
}
return nil
}
func (x *ConfigSource) GetInitialFetchTimeout() *duration.Duration {
if x != nil {
return x.InitialFetchTimeout
}
return nil
}
func (x *ConfigSource) GetResourceApiVersion() ApiVersion {
if x != nil {
return x.ResourceApiVersion
}
return ApiVersion_AUTO
}
type isConfigSource_ConfigSourceSpecifier interface {
isConfigSource_ConfigSourceSpecifier()
}
type ConfigSource_Path struct {
// Path on the filesystem to source and watch for configuration updates.
// When sourcing configuration for :ref:`secret <envoy_api_msg_auth.Secret>`,
// the certificate and key files are also watched for updates.
//
// .. note::
//
// The path to the source must exist at config load time.
//
// .. note::
//
// Envoy will only watch the file path for *moves.* This is because in general only moves
// are atomic. The same method of swapping files as is demonstrated in the
// :ref:`runtime documentation <config_runtime_symbolic_link_swap>` can be used here also.
Path string `protobuf:"bytes,1,opt,name=path,proto3,oneof"`
}
type ConfigSource_ApiConfigSource struct {
// API configuration source.
ApiConfigSource *ApiConfigSource `protobuf:"bytes,2,opt,name=api_config_source,json=apiConfigSource,proto3,oneof"`
}
type ConfigSource_Ads struct {
// When set, ADS will be used to fetch resources. The ADS API configuration
// source in the bootstrap configuration is used.
Ads *AggregatedConfigSource `protobuf:"bytes,3,opt,name=ads,proto3,oneof"`
}
type ConfigSource_Self struct {
// [#not-implemented-hide:]
// When set, the client will access the resources from the same server it got the
// ConfigSource from, although not necessarily from the same stream. This is similar to the
// :ref:`ads<envoy_api_field.ConfigSource.ads>` field, except that the client may use a
// different stream to the same server. As a result, this field can be used for things
// like LRS that cannot be sent on an ADS stream. It can also be used to link from (e.g.)
// LDS to RDS on the same server without requiring the management server to know its name
// or required credentials.
// [#next-major-version: In xDS v3, consider replacing the ads field with this one, since
// this field can implicitly mean to use the same stream in the case where the ConfigSource
// is provided via ADS and the specified data can also be obtained via ADS.]
Self *SelfConfigSource `protobuf:"bytes,5,opt,name=self,proto3,oneof"`
}
func (*ConfigSource_Path) isConfigSource_ConfigSourceSpecifier() {}
func (*ConfigSource_ApiConfigSource) isConfigSource_ConfigSourceSpecifier() {}
func (*ConfigSource_Ads) isConfigSource_ConfigSourceSpecifier() {}
func (*ConfigSource_Self) isConfigSource_ConfigSourceSpecifier() {}
var File_envoy_api_v2_core_config_source_proto protoreflect.FileDescriptor
var file_envoy_api_v2_core_config_source_proto_rawDesc = []byte{
0x0a, 0x25, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x24, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x67, 0x72,
0x70, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76,
0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa6, 0x05,
0x0a, 0x0f, 0x41, 0x70, 0x69, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x12, 0x4f, 0x0a, 0x08, 0x61, 0x70, 0x69, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x69, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x41, 0x70, 0x69, 0x54, 0x79, 0x70, 0x65, 0x42,
0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x70, 0x69, 0x54, 0x79,
0x70, 0x65, 0x12, 0x5b, 0x0a, 0x15, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x5f,
0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32,
0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x13, 0x74, 0x72, 0x61, 0x6e,
0x73, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e,
0x61, 0x6d, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x0d, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x73, 0x65, 0x72,
0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x0c, 0x67, 0x72, 0x70,
0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x0d, 0x72, 0x65, 0x66,
0x72, 0x65, 0x73, 0x68, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x66,
0x72, 0x65, 0x73, 0x68, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x4c, 0x0a, 0x0f, 0x72, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0xfa,
0x42, 0x05, 0xaa, 0x01, 0x02, 0x2a, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x54, 0x0a, 0x13, 0x72, 0x61, 0x74, 0x65, 0x5f,
0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x06,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d,
0x69, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x11, 0x72, 0x61, 0x74, 0x65,
0x4c, 0x69, 0x6d, 0x69, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x41, 0x0a,
0x1e, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x72,
0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18,
0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x73, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4f, 0x6e,
0x46, 0x69, 0x72, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x6e, 0x6c, 0x79,
0x22, 0x54, 0x0a, 0x07, 0x41, 0x70, 0x69, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x17, 0x55,
0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x53, 0x54, 0x5f,
0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x1a, 0x08, 0x08, 0x01, 0xa8, 0xf7, 0xb4, 0x8b,
0x02, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x45, 0x53, 0x54, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04,
0x47, 0x52, 0x50, 0x43, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x5f,
0x47, 0x52, 0x50, 0x43, 0x10, 0x03, 0x22, 0x18, 0x0a, 0x16, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67,
0x61, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x22, 0x6f, 0x0a, 0x10, 0x53, 0x65, 0x6c, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x12, 0x5b, 0x0a, 0x15, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72,
0x74, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x13, 0x74, 0x72,
0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x53,
0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x3b, 0x0a, 0x0a, 0x6d, 0x61, 0x78, 0x5f, 0x74,
0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49,
0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6d, 0x61, 0x78, 0x54, 0x6f,
0x6b, 0x65, 0x6e, 0x73, 0x12, 0x49, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x6c, 0x5f, 0x72, 0x61, 0x74,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0e, 0xfa, 0x42, 0x0b, 0x12, 0x09, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x22,
0xba, 0x03, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x12, 0x14, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x50, 0x0a, 0x11, 0x61, 0x70, 0x69, 0x5f, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32,
0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x69, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x70, 0x69, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x03, 0x61, 0x64, 0x73, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70,
0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67,
0x61, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x48, 0x00, 0x52, 0x03, 0x61, 0x64, 0x73, 0x12, 0x39, 0x0a, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x18,
0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70,
0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x6c, 0x66, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x04, 0x73, 0x65,
0x6c, 0x66, 0x12, 0x4d, 0x0a, 0x15, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65,
0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x69, 0x6e,
0x69, 0x74, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75,
0x74, 0x12, 0x59, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x70,
0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63,
0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x08,
0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x12, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x1e, 0x0a, 0x17,
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x70,
0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x2a, 0x2e, 0x0a, 0x0a,
0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0c, 0x0a, 0x04, 0x41, 0x55,
0x54, 0x4f, 0x10, 0x00, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x0a, 0x0a, 0x02, 0x56, 0x32, 0x10, 0x01,
0x1a, 0x02, 0x08, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x56, 0x33, 0x10, 0x02, 0x42, 0x5a, 0x0a, 0x1f,
0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x42,
0x11, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x50, 0x01, 0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x16, 0x12, 0x14, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33,
0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_core_config_source_proto_rawDescOnce sync.Once
file_envoy_api_v2_core_config_source_proto_rawDescData = file_envoy_api_v2_core_config_source_proto_rawDesc
)
func file_envoy_api_v2_core_config_source_proto_rawDescGZIP() []byte {
file_envoy_api_v2_core_config_source_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_core_config_source_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_core_config_source_proto_rawDescData)
})
return file_envoy_api_v2_core_config_source_proto_rawDescData
}
var file_envoy_api_v2_core_config_source_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_envoy_api_v2_core_config_source_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_envoy_api_v2_core_config_source_proto_goTypes = []interface{}{
(ApiVersion)(0), // 0: envoy.api.v2.core.ApiVersion
(ApiConfigSource_ApiType)(0), // 1: envoy.api.v2.core.ApiConfigSource.ApiType
(*ApiConfigSource)(nil), // 2: envoy.api.v2.core.ApiConfigSource
(*AggregatedConfigSource)(nil), // 3: envoy.api.v2.core.AggregatedConfigSource
(*SelfConfigSource)(nil), // 4: envoy.api.v2.core.SelfConfigSource
(*RateLimitSettings)(nil), // 5: envoy.api.v2.core.RateLimitSettings
(*ConfigSource)(nil), // 6: envoy.api.v2.core.ConfigSource
(*GrpcService)(nil), // 7: envoy.api.v2.core.GrpcService
(*duration.Duration)(nil), // 8: google.protobuf.Duration
(*wrappers.UInt32Value)(nil), // 9: google.protobuf.UInt32Value
(*wrappers.DoubleValue)(nil), // 10: google.protobuf.DoubleValue
}
var file_envoy_api_v2_core_config_source_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.core.ApiConfigSource.api_type:type_name -> envoy.api.v2.core.ApiConfigSource.ApiType
0, // 1: envoy.api.v2.core.ApiConfigSource.transport_api_version:type_name -> envoy.api.v2.core.ApiVersion
7, // 2: envoy.api.v2.core.ApiConfigSource.grpc_services:type_name -> envoy.api.v2.core.GrpcService
8, // 3: envoy.api.v2.core.ApiConfigSource.refresh_delay:type_name -> google.protobuf.Duration
8, // 4: envoy.api.v2.core.ApiConfigSource.request_timeout:type_name -> google.protobuf.Duration
5, // 5: envoy.api.v2.core.ApiConfigSource.rate_limit_settings:type_name -> envoy.api.v2.core.RateLimitSettings
0, // 6: envoy.api.v2.core.SelfConfigSource.transport_api_version:type_name -> envoy.api.v2.core.ApiVersion
9, // 7: envoy.api.v2.core.RateLimitSettings.max_tokens:type_name -> google.protobuf.UInt32Value
10, // 8: envoy.api.v2.core.RateLimitSettings.fill_rate:type_name -> google.protobuf.DoubleValue
2, // 9: envoy.api.v2.core.ConfigSource.api_config_source:type_name -> envoy.api.v2.core.ApiConfigSource
3, // 10: envoy.api.v2.core.ConfigSource.ads:type_name -> envoy.api.v2.core.AggregatedConfigSource
4, // 11: envoy.api.v2.core.ConfigSource.self:type_name -> envoy.api.v2.core.SelfConfigSource
8, // 12: envoy.api.v2.core.ConfigSource.initial_fetch_timeout:type_name -> google.protobuf.Duration
0, // 13: envoy.api.v2.core.ConfigSource.resource_api_version:type_name -> envoy.api.v2.core.ApiVersion
14, // [14:14] is the sub-list for method output_type
14, // [14:14] is the sub-list for method input_type
14, // [14:14] is the sub-list for extension type_name
14, // [14:14] is the sub-list for extension extendee
0, // [0:14] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_core_config_source_proto_init() }
func file_envoy_api_v2_core_config_source_proto_init() {
if File_envoy_api_v2_core_config_source_proto != nil {
return
}
file_envoy_api_v2_core_grpc_service_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_core_config_source_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApiConfigSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_config_source_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregatedConfigSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_config_source_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SelfConfigSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_config_source_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RateLimitSettings); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_config_source_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ConfigSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_envoy_api_v2_core_config_source_proto_msgTypes[4].OneofWrappers = []interface{}{
(*ConfigSource_Path)(nil),
(*ConfigSource_ApiConfigSource)(nil),
(*ConfigSource_Ads)(nil),
(*ConfigSource_Self)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_core_config_source_proto_rawDesc,
NumEnums: 2,
NumMessages: 5,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_core_config_source_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_core_config_source_proto_depIdxs,
EnumInfos: file_envoy_api_v2_core_config_source_proto_enumTypes,
MessageInfos: file_envoy_api_v2_core_config_source_proto_msgTypes,
}.Build()
File_envoy_api_v2_core_config_source_proto = out.File
file_envoy_api_v2_core_config_source_proto_rawDesc = nil
file_envoy_api_v2_core_config_source_proto_goTypes = nil
file_envoy_api_v2_core_config_source_proto_depIdxs = nil
}

View file

@ -0,0 +1,529 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/core/config_source.proto
package envoy_api_v2_core
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on ApiConfigSource with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *ApiConfigSource) Validate() error {
if m == nil {
return nil
}
if _, ok := ApiConfigSource_ApiType_name[int32(m.GetApiType())]; !ok {
return ApiConfigSourceValidationError{
field: "ApiType",
reason: "value must be one of the defined enum values",
}
}
if _, ok := ApiVersion_name[int32(m.GetTransportApiVersion())]; !ok {
return ApiConfigSourceValidationError{
field: "TransportApiVersion",
reason: "value must be one of the defined enum values",
}
}
for idx, item := range m.GetGrpcServices() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ApiConfigSourceValidationError{
field: fmt.Sprintf("GrpcServices[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
if v, ok := interface{}(m.GetRefreshDelay()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ApiConfigSourceValidationError{
field: "RefreshDelay",
reason: "embedded message failed validation",
cause: err,
}
}
}
if d := m.GetRequestTimeout(); d != nil {
dur, err := ptypes.Duration(d)
if err != nil {
return ApiConfigSourceValidationError{
field: "RequestTimeout",
reason: "value is not a valid duration",
cause: err,
}
}
gt := time.Duration(0*time.Second + 0*time.Nanosecond)
if dur <= gt {
return ApiConfigSourceValidationError{
field: "RequestTimeout",
reason: "value must be greater than 0s",
}
}
}
if v, ok := interface{}(m.GetRateLimitSettings()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ApiConfigSourceValidationError{
field: "RateLimitSettings",
reason: "embedded message failed validation",
cause: err,
}
}
}
// no validation rules for SetNodeOnFirstMessageOnly
return nil
}
// ApiConfigSourceValidationError is the validation error returned by
// ApiConfigSource.Validate if the designated constraints aren't met.
type ApiConfigSourceValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ApiConfigSourceValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ApiConfigSourceValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ApiConfigSourceValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ApiConfigSourceValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ApiConfigSourceValidationError) ErrorName() string { return "ApiConfigSourceValidationError" }
// Error satisfies the builtin error interface
func (e ApiConfigSourceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sApiConfigSource.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ApiConfigSourceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ApiConfigSourceValidationError{}
// Validate checks the field values on AggregatedConfigSource with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *AggregatedConfigSource) Validate() error {
if m == nil {
return nil
}
return nil
}
// AggregatedConfigSourceValidationError is the validation error returned by
// AggregatedConfigSource.Validate if the designated constraints aren't met.
type AggregatedConfigSourceValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e AggregatedConfigSourceValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e AggregatedConfigSourceValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e AggregatedConfigSourceValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e AggregatedConfigSourceValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e AggregatedConfigSourceValidationError) ErrorName() string {
return "AggregatedConfigSourceValidationError"
}
// Error satisfies the builtin error interface
func (e AggregatedConfigSourceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sAggregatedConfigSource.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = AggregatedConfigSourceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = AggregatedConfigSourceValidationError{}
// Validate checks the field values on SelfConfigSource with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *SelfConfigSource) Validate() error {
if m == nil {
return nil
}
if _, ok := ApiVersion_name[int32(m.GetTransportApiVersion())]; !ok {
return SelfConfigSourceValidationError{
field: "TransportApiVersion",
reason: "value must be one of the defined enum values",
}
}
return nil
}
// SelfConfigSourceValidationError is the validation error returned by
// SelfConfigSource.Validate if the designated constraints aren't met.
type SelfConfigSourceValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e SelfConfigSourceValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e SelfConfigSourceValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e SelfConfigSourceValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e SelfConfigSourceValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e SelfConfigSourceValidationError) ErrorName() string { return "SelfConfigSourceValidationError" }
// Error satisfies the builtin error interface
func (e SelfConfigSourceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sSelfConfigSource.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = SelfConfigSourceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = SelfConfigSourceValidationError{}
// Validate checks the field values on RateLimitSettings with the rules defined
// in the proto definition for this message. If any rules are violated, an
// error is returned.
func (m *RateLimitSettings) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetMaxTokens()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return RateLimitSettingsValidationError{
field: "MaxTokens",
reason: "embedded message failed validation",
cause: err,
}
}
}
if wrapper := m.GetFillRate(); wrapper != nil {
if wrapper.GetValue() <= 0 {
return RateLimitSettingsValidationError{
field: "FillRate",
reason: "value must be greater than 0",
}
}
}
return nil
}
// RateLimitSettingsValidationError is the validation error returned by
// RateLimitSettings.Validate if the designated constraints aren't met.
type RateLimitSettingsValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e RateLimitSettingsValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e RateLimitSettingsValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e RateLimitSettingsValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e RateLimitSettingsValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e RateLimitSettingsValidationError) ErrorName() string {
return "RateLimitSettingsValidationError"
}
// Error satisfies the builtin error interface
func (e RateLimitSettingsValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sRateLimitSettings.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = RateLimitSettingsValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = RateLimitSettingsValidationError{}
// Validate checks the field values on ConfigSource with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *ConfigSource) Validate() error {
if m == nil {
return nil
}
if v, ok := interface{}(m.GetInitialFetchTimeout()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ConfigSourceValidationError{
field: "InitialFetchTimeout",
reason: "embedded message failed validation",
cause: err,
}
}
}
if _, ok := ApiVersion_name[int32(m.GetResourceApiVersion())]; !ok {
return ConfigSourceValidationError{
field: "ResourceApiVersion",
reason: "value must be one of the defined enum values",
}
}
switch m.ConfigSourceSpecifier.(type) {
case *ConfigSource_Path:
// no validation rules for Path
case *ConfigSource_ApiConfigSource:
if v, ok := interface{}(m.GetApiConfigSource()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ConfigSourceValidationError{
field: "ApiConfigSource",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *ConfigSource_Ads:
if v, ok := interface{}(m.GetAds()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ConfigSourceValidationError{
field: "Ads",
reason: "embedded message failed validation",
cause: err,
}
}
}
case *ConfigSource_Self:
if v, ok := interface{}(m.GetSelf()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return ConfigSourceValidationError{
field: "Self",
reason: "embedded message failed validation",
cause: err,
}
}
}
default:
return ConfigSourceValidationError{
field: "ConfigSourceSpecifier",
reason: "value is required",
}
}
return nil
}
// ConfigSourceValidationError is the validation error returned by
// ConfigSource.Validate if the designated constraints aren't met.
type ConfigSourceValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e ConfigSourceValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e ConfigSourceValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e ConfigSourceValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e ConfigSourceValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e ConfigSourceValidationError) ErrorName() string { return "ConfigSourceValidationError" }
// Error satisfies the builtin error interface
func (e ConfigSourceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sConfigSource.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = ConfigSourceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = ConfigSourceValidationError{}

View file

@ -0,0 +1,198 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/core/event_service_config.proto
package envoy_api_v2_core
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// [#not-implemented-hide:]
// Configuration of the event reporting service endpoint.
type EventServiceConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to ConfigSourceSpecifier:
// *EventServiceConfig_GrpcService
ConfigSourceSpecifier isEventServiceConfig_ConfigSourceSpecifier `protobuf_oneof:"config_source_specifier"`
}
func (x *EventServiceConfig) Reset() {
*x = EventServiceConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_event_service_config_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EventServiceConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EventServiceConfig) ProtoMessage() {}
func (x *EventServiceConfig) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_event_service_config_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use EventServiceConfig.ProtoReflect.Descriptor instead.
func (*EventServiceConfig) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_event_service_config_proto_rawDescGZIP(), []int{0}
}
func (m *EventServiceConfig) GetConfigSourceSpecifier() isEventServiceConfig_ConfigSourceSpecifier {
if m != nil {
return m.ConfigSourceSpecifier
}
return nil
}
func (x *EventServiceConfig) GetGrpcService() *GrpcService {
if x, ok := x.GetConfigSourceSpecifier().(*EventServiceConfig_GrpcService); ok {
return x.GrpcService
}
return nil
}
type isEventServiceConfig_ConfigSourceSpecifier interface {
isEventServiceConfig_ConfigSourceSpecifier()
}
type EventServiceConfig_GrpcService struct {
// Specifies the gRPC service that hosts the event reporting service.
GrpcService *GrpcService `protobuf:"bytes,1,opt,name=grpc_service,json=grpcService,proto3,oneof"`
}
func (*EventServiceConfig_GrpcService) isEventServiceConfig_ConfigSourceSpecifier() {}
var File_envoy_api_v2_core_event_service_config_proto protoreflect.FileDescriptor
var file_envoy_api_v2_core_event_service_config_proto_rawDesc = []byte{
0x0a, 0x2c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72,
0x65, 0x1a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f,
0x63, 0x6f, 0x72, 0x65, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e,
0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e,
0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0x79, 0x0a, 0x12, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x43, 0x0a, 0x0c, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x73, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x65, 0x6e,
0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x67,
0x72, 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x42, 0x1e, 0x0a, 0x17, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63,
0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x42, 0x60, 0x0a, 0x1f, 0x69, 0x6f,
0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x17, 0x45,
0x76, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x16, 0x12, 0x14,
0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72,
0x65, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_core_event_service_config_proto_rawDescOnce sync.Once
file_envoy_api_v2_core_event_service_config_proto_rawDescData = file_envoy_api_v2_core_event_service_config_proto_rawDesc
)
func file_envoy_api_v2_core_event_service_config_proto_rawDescGZIP() []byte {
file_envoy_api_v2_core_event_service_config_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_core_event_service_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_core_event_service_config_proto_rawDescData)
})
return file_envoy_api_v2_core_event_service_config_proto_rawDescData
}
var file_envoy_api_v2_core_event_service_config_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_envoy_api_v2_core_event_service_config_proto_goTypes = []interface{}{
(*EventServiceConfig)(nil), // 0: envoy.api.v2.core.EventServiceConfig
(*GrpcService)(nil), // 1: envoy.api.v2.core.GrpcService
}
var file_envoy_api_v2_core_event_service_config_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.core.EventServiceConfig.grpc_service:type_name -> envoy.api.v2.core.GrpcService
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_core_event_service_config_proto_init() }
func file_envoy_api_v2_core_event_service_config_proto_init() {
if File_envoy_api_v2_core_event_service_config_proto != nil {
return
}
file_envoy_api_v2_core_grpc_service_proto_init()
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_core_event_service_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EventServiceConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_envoy_api_v2_core_event_service_config_proto_msgTypes[0].OneofWrappers = []interface{}{
(*EventServiceConfig_GrpcService)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_core_event_service_config_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_core_event_service_config_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_core_event_service_config_proto_depIdxs,
MessageInfos: file_envoy_api_v2_core_event_service_config_proto_msgTypes,
}.Build()
File_envoy_api_v2_core_event_service_config_proto = out.File
file_envoy_api_v2_core_event_service_config_proto_rawDesc = nil
file_envoy_api_v2_core_event_service_config_proto_goTypes = nil
file_envoy_api_v2_core_event_service_config_proto_depIdxs = nil
}

View file

@ -0,0 +1,123 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/core/event_service_config.proto
package envoy_api_v2_core
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on EventServiceConfig with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *EventServiceConfig) Validate() error {
if m == nil {
return nil
}
switch m.ConfigSourceSpecifier.(type) {
case *EventServiceConfig_GrpcService:
if v, ok := interface{}(m.GetGrpcService()).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return EventServiceConfigValidationError{
field: "GrpcService",
reason: "embedded message failed validation",
cause: err,
}
}
}
default:
return EventServiceConfigValidationError{
field: "ConfigSourceSpecifier",
reason: "value is required",
}
}
return nil
}
// EventServiceConfigValidationError is the validation error returned by
// EventServiceConfig.Validate if the designated constraints aren't met.
type EventServiceConfigValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e EventServiceConfigValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e EventServiceConfigValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e EventServiceConfigValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e EventServiceConfigValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e EventServiceConfigValidationError) ErrorName() string {
return "EventServiceConfigValidationError"
}
// Error satisfies the builtin error interface
func (e EventServiceConfigValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sEventServiceConfig.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = EventServiceConfigValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = EventServiceConfigValidationError{}

View file

@ -0,0 +1,242 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.14.0
// source: envoy/api/v2/core/grpc_method_list.proto
package envoy_api_v2_core
import (
_ "github.com/cncf/xds/go/udpa/annotations"
_ "github.com/envoyproxy/protoc-gen-validate/validate"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// A list of gRPC methods which can be used as an allowlist, for example.
type GrpcMethodList struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Services []*GrpcMethodList_Service `protobuf:"bytes,1,rep,name=services,proto3" json:"services,omitempty"`
}
func (x *GrpcMethodList) Reset() {
*x = GrpcMethodList{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_grpc_method_list_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GrpcMethodList) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GrpcMethodList) ProtoMessage() {}
func (x *GrpcMethodList) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_grpc_method_list_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GrpcMethodList.ProtoReflect.Descriptor instead.
func (*GrpcMethodList) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_grpc_method_list_proto_rawDescGZIP(), []int{0}
}
func (x *GrpcMethodList) GetServices() []*GrpcMethodList_Service {
if x != nil {
return x.Services
}
return nil
}
type GrpcMethodList_Service struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the gRPC service.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The names of the gRPC methods in this service.
MethodNames []string `protobuf:"bytes,2,rep,name=method_names,json=methodNames,proto3" json:"method_names,omitempty"`
}
func (x *GrpcMethodList_Service) Reset() {
*x = GrpcMethodList_Service{}
if protoimpl.UnsafeEnabled {
mi := &file_envoy_api_v2_core_grpc_method_list_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GrpcMethodList_Service) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GrpcMethodList_Service) ProtoMessage() {}
func (x *GrpcMethodList_Service) ProtoReflect() protoreflect.Message {
mi := &file_envoy_api_v2_core_grpc_method_list_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GrpcMethodList_Service.ProtoReflect.Descriptor instead.
func (*GrpcMethodList_Service) Descriptor() ([]byte, []int) {
return file_envoy_api_v2_core_grpc_method_list_proto_rawDescGZIP(), []int{0, 0}
}
func (x *GrpcMethodList_Service) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *GrpcMethodList_Service) GetMethodNames() []string {
if x != nil {
return x.MethodNames
}
return nil
}
var File_envoy_api_v2_core_grpc_method_list_proto protoreflect.FileDescriptor
var file_envoy_api_v2_core_grpc_method_list_proto_rawDesc = []byte{
0x0a, 0x28, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63,
0x6f, 0x72, 0x65, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x5f,
0x6c, 0x69, 0x73, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x65, 0x6e, 0x76, 0x6f,
0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x1e, 0x75,
0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75,
0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61,
0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xac, 0x01, 0x0a, 0x0e, 0x47, 0x72, 0x70, 0x63, 0x4d, 0x65,
0x74, 0x68, 0x6f, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76,
0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x47,
0x72, 0x70, 0x63, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x53, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x1a,
0x53, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x20,
0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x0c, 0x6d, 0x65, 0x74, 0x68, 0x6f,
0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x08, 0xfa,
0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4e,
0x61, 0x6d, 0x65, 0x73, 0x42, 0x5c, 0x0a, 0x1f, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x13, 0x47, 0x72, 0x70, 0x63, 0x4d, 0x65, 0x74,
0x68, 0x6f, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xf2, 0x98,
0xfe, 0x8f, 0x05, 0x16, 0x12, 0x14, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02,
0x10, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_envoy_api_v2_core_grpc_method_list_proto_rawDescOnce sync.Once
file_envoy_api_v2_core_grpc_method_list_proto_rawDescData = file_envoy_api_v2_core_grpc_method_list_proto_rawDesc
)
func file_envoy_api_v2_core_grpc_method_list_proto_rawDescGZIP() []byte {
file_envoy_api_v2_core_grpc_method_list_proto_rawDescOnce.Do(func() {
file_envoy_api_v2_core_grpc_method_list_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_core_grpc_method_list_proto_rawDescData)
})
return file_envoy_api_v2_core_grpc_method_list_proto_rawDescData
}
var file_envoy_api_v2_core_grpc_method_list_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_envoy_api_v2_core_grpc_method_list_proto_goTypes = []interface{}{
(*GrpcMethodList)(nil), // 0: envoy.api.v2.core.GrpcMethodList
(*GrpcMethodList_Service)(nil), // 1: envoy.api.v2.core.GrpcMethodList.Service
}
var file_envoy_api_v2_core_grpc_method_list_proto_depIdxs = []int32{
1, // 0: envoy.api.v2.core.GrpcMethodList.services:type_name -> envoy.api.v2.core.GrpcMethodList.Service
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_envoy_api_v2_core_grpc_method_list_proto_init() }
func file_envoy_api_v2_core_grpc_method_list_proto_init() {
if File_envoy_api_v2_core_grpc_method_list_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_envoy_api_v2_core_grpc_method_list_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GrpcMethodList); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_envoy_api_v2_core_grpc_method_list_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GrpcMethodList_Service); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_envoy_api_v2_core_grpc_method_list_proto_rawDesc,
NumEnums: 0,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_envoy_api_v2_core_grpc_method_list_proto_goTypes,
DependencyIndexes: file_envoy_api_v2_core_grpc_method_list_proto_depIdxs,
MessageInfos: file_envoy_api_v2_core_grpc_method_list_proto_msgTypes,
}.Build()
File_envoy_api_v2_core_grpc_method_list_proto = out.File
file_envoy_api_v2_core_grpc_method_list_proto_rawDesc = nil
file_envoy_api_v2_core_grpc_method_list_proto_goTypes = nil
file_envoy_api_v2_core_grpc_method_list_proto_depIdxs = nil
}

View file

@ -0,0 +1,195 @@
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/api/v2/core/grpc_method_list.proto
package envoy_api_v2_core
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
// ensure the imports are used
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
// Validate checks the field values on GrpcMethodList with the rules defined in
// the proto definition for this message. If any rules are violated, an error
// is returned.
func (m *GrpcMethodList) Validate() error {
if m == nil {
return nil
}
for idx, item := range m.GetServices() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return GrpcMethodListValidationError{
field: fmt.Sprintf("Services[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
// GrpcMethodListValidationError is the validation error returned by
// GrpcMethodList.Validate if the designated constraints aren't met.
type GrpcMethodListValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e GrpcMethodListValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e GrpcMethodListValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e GrpcMethodListValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e GrpcMethodListValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e GrpcMethodListValidationError) ErrorName() string { return "GrpcMethodListValidationError" }
// Error satisfies the builtin error interface
func (e GrpcMethodListValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sGrpcMethodList.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = GrpcMethodListValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = GrpcMethodListValidationError{}
// Validate checks the field values on GrpcMethodList_Service with the rules
// defined in the proto definition for this message. If any rules are
// violated, an error is returned.
func (m *GrpcMethodList_Service) Validate() error {
if m == nil {
return nil
}
if len(m.GetName()) < 1 {
return GrpcMethodList_ServiceValidationError{
field: "Name",
reason: "value length must be at least 1 bytes",
}
}
if len(m.GetMethodNames()) < 1 {
return GrpcMethodList_ServiceValidationError{
field: "MethodNames",
reason: "value must contain at least 1 item(s)",
}
}
return nil
}
// GrpcMethodList_ServiceValidationError is the validation error returned by
// GrpcMethodList_Service.Validate if the designated constraints aren't met.
type GrpcMethodList_ServiceValidationError struct {
field string
reason string
cause error
key bool
}
// Field function returns field value.
func (e GrpcMethodList_ServiceValidationError) Field() string { return e.field }
// Reason function returns reason value.
func (e GrpcMethodList_ServiceValidationError) Reason() string { return e.reason }
// Cause function returns cause value.
func (e GrpcMethodList_ServiceValidationError) Cause() error { return e.cause }
// Key function returns key value.
func (e GrpcMethodList_ServiceValidationError) Key() bool { return e.key }
// ErrorName returns error name.
func (e GrpcMethodList_ServiceValidationError) ErrorName() string {
return "GrpcMethodList_ServiceValidationError"
}
// Error satisfies the builtin error interface
func (e GrpcMethodList_ServiceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sGrpcMethodList_Service.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = GrpcMethodList_ServiceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = GrpcMethodList_ServiceValidationError{}

Some files were not shown because too many files have changed in this diff Show more