1// Code generated by protoc-gen-go. DO NOT EDIT.
2// versions:
3// 	protoc-gen-go v1.25.0
4// 	protoc        v3.16.0
5// source: envoy/config/route/v3/route.proto
6
7package envoy_config_route_v3
8
9import (
10	_ "github.com/cncf/xds/go/udpa/annotations"
11	v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
12	_ "github.com/envoyproxy/protoc-gen-validate/validate"
13	proto "github.com/golang/protobuf/proto"
14	wrappers "github.com/golang/protobuf/ptypes/wrappers"
15	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
16	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
17	reflect "reflect"
18	sync "sync"
19)
20
21const (
22	// Verify that this generated code is sufficiently up-to-date.
23	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
24	// Verify that runtime/protoimpl is sufficiently up-to-date.
25	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
26)
27
28// This is a compile-time assertion that a sufficiently up-to-date version
29// of the legacy proto package is being used.
30const _ = proto.ProtoPackageIsVersion4
31
32// [#next-free-field: 13]
33type RouteConfiguration struct {
34	state         protoimpl.MessageState
35	sizeCache     protoimpl.SizeCache
36	unknownFields protoimpl.UnknownFields
37
38	// The name of the route configuration. For example, it might match
39	// :ref:`route_config_name
40	// <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.Rds.route_config_name>` in
41	// :ref:`envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.Rds`.
42	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
43	// An array of virtual hosts that make up the route table.
44	VirtualHosts []*VirtualHost `protobuf:"bytes,2,rep,name=virtual_hosts,json=virtualHosts,proto3" json:"virtual_hosts,omitempty"`
45	// An array of virtual hosts will be dynamically loaded via the VHDS API.
46	// Both *virtual_hosts* and *vhds* fields will be used when present. *virtual_hosts* can be used
47	// for a base routing table or for infrequently changing virtual hosts. *vhds* is used for
48	// on-demand discovery of virtual hosts. The contents of these two fields will be merged to
49	// generate a routing table for a given RouteConfiguration, with *vhds* derived configuration
50	// taking precedence.
51	Vhds *Vhds `protobuf:"bytes,9,opt,name=vhds,proto3" json:"vhds,omitempty"`
52	// Optionally specifies a list of HTTP headers that the connection manager
53	// will consider to be internal only. If they are found on external requests they will be cleaned
54	// prior to filter invocation. See :ref:`config_http_conn_man_headers_x-envoy-internal` for more
55	// information.
56	InternalOnlyHeaders []string `protobuf:"bytes,3,rep,name=internal_only_headers,json=internalOnlyHeaders,proto3" json:"internal_only_headers,omitempty"`
57	// Specifies a list of HTTP headers that should be added to each response that
58	// the connection manager encodes. Headers specified at this level are applied
59	// after headers from any enclosed :ref:`envoy_v3_api_msg_config.route.v3.VirtualHost` or
60	// :ref:`envoy_v3_api_msg_config.route.v3.RouteAction`. For more information, including details on
61	// header value syntax, see the documentation on :ref:`custom request headers
62	// <config_http_conn_man_headers_custom_request_headers>`.
63	ResponseHeadersToAdd []*v3.HeaderValueOption `protobuf:"bytes,4,rep,name=response_headers_to_add,json=responseHeadersToAdd,proto3" json:"response_headers_to_add,omitempty"`
64	// Specifies a list of HTTP headers that should be removed from each response
65	// that the connection manager encodes.
66	ResponseHeadersToRemove []string `protobuf:"bytes,5,rep,name=response_headers_to_remove,json=responseHeadersToRemove,proto3" json:"response_headers_to_remove,omitempty"`
67	// Specifies a list of HTTP headers that should be added to each request
68	// routed by the HTTP connection manager. Headers specified at this level are
69	// applied after headers from any enclosed :ref:`envoy_v3_api_msg_config.route.v3.VirtualHost` or
70	// :ref:`envoy_v3_api_msg_config.route.v3.RouteAction`. For more information, including details on
71	// header value syntax, see the documentation on :ref:`custom request headers
72	// <config_http_conn_man_headers_custom_request_headers>`.
73	RequestHeadersToAdd []*v3.HeaderValueOption `protobuf:"bytes,6,rep,name=request_headers_to_add,json=requestHeadersToAdd,proto3" json:"request_headers_to_add,omitempty"`
74	// Specifies a list of HTTP headers that should be removed from each request
75	// routed by the HTTP connection manager.
76	RequestHeadersToRemove []string `protobuf:"bytes,8,rep,name=request_headers_to_remove,json=requestHeadersToRemove,proto3" json:"request_headers_to_remove,omitempty"`
77	// By default, headers that should be added/removed are evaluated from most to least specific:
78	//
79	// * route level
80	// * virtual host level
81	// * connection manager level
82	//
83	// To allow setting overrides at the route or virtual host level, this order can be reversed
84	// by setting this option to true. Defaults to false.
85	//
86	// [#next-major-version: In the v3 API, this will default to true.]
87	MostSpecificHeaderMutationsWins bool `protobuf:"varint,10,opt,name=most_specific_header_mutations_wins,json=mostSpecificHeaderMutationsWins,proto3" json:"most_specific_header_mutations_wins,omitempty"`
88	// An optional boolean that specifies whether the clusters that the route
89	// table refers to will be validated by the cluster manager. If set to true
90	// and a route refers to a non-existent cluster, the route table will not
91	// load. If set to false and a route refers to a non-existent cluster, the
92	// route table will load and the router filter will return a 404 if the route
93	// is selected at runtime. This setting defaults to true if the route table
94	// is statically defined via the :ref:`route_config
95	// <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.route_config>`
96	// option. This setting default to false if the route table is loaded dynamically via the
97	// :ref:`rds
98	// <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.rds>`
99	// option. Users may wish to override the default behavior in certain cases (for example when
100	// using CDS with a static route table).
101	ValidateClusters *wrappers.BoolValue `protobuf:"bytes,7,opt,name=validate_clusters,json=validateClusters,proto3" json:"validate_clusters,omitempty"`
102	// The maximum bytes of the response :ref:`direct response body
103	// <envoy_v3_api_field_config.route.v3.DirectResponseAction.body>` size. If not specified the default
104	// is 4096.
105	//
106	// .. warning::
107	//
108	//   Envoy currently holds the content of :ref:`direct response body
109	//   <envoy_v3_api_field_config.route.v3.DirectResponseAction.body>` in memory. Be careful setting
110	//   this to be larger than the default 4KB, since the allocated memory for direct response body
111	//   is not subject to data plane buffering controls.
112	//
113	MaxDirectResponseBodySizeBytes *wrappers.UInt32Value `protobuf:"bytes,11,opt,name=max_direct_response_body_size_bytes,json=maxDirectResponseBodySizeBytes,proto3" json:"max_direct_response_body_size_bytes,omitempty"`
114	// [#not-implemented-hide:]
115	// A list of plugins and their configurations which may be used by a
116	// :ref:`envoy_v3_api_field_config.route.v3.RouteAction.cluster_specifier_plugin`
117	// within the route. All *extension.name* fields in this list must be unique.
118	ClusterSpecifierPlugins []*ClusterSpecifierPlugin `protobuf:"bytes,12,rep,name=cluster_specifier_plugins,json=clusterSpecifierPlugins,proto3" json:"cluster_specifier_plugins,omitempty"`
119}
120
121func (x *RouteConfiguration) Reset() {
122	*x = RouteConfiguration{}
123	if protoimpl.UnsafeEnabled {
124		mi := &file_envoy_config_route_v3_route_proto_msgTypes[0]
125		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
126		ms.StoreMessageInfo(mi)
127	}
128}
129
130func (x *RouteConfiguration) String() string {
131	return protoimpl.X.MessageStringOf(x)
132}
133
134func (*RouteConfiguration) ProtoMessage() {}
135
136func (x *RouteConfiguration) ProtoReflect() protoreflect.Message {
137	mi := &file_envoy_config_route_v3_route_proto_msgTypes[0]
138	if protoimpl.UnsafeEnabled && x != nil {
139		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
140		if ms.LoadMessageInfo() == nil {
141			ms.StoreMessageInfo(mi)
142		}
143		return ms
144	}
145	return mi.MessageOf(x)
146}
147
148// Deprecated: Use RouteConfiguration.ProtoReflect.Descriptor instead.
149func (*RouteConfiguration) Descriptor() ([]byte, []int) {
150	return file_envoy_config_route_v3_route_proto_rawDescGZIP(), []int{0}
151}
152
153func (x *RouteConfiguration) GetName() string {
154	if x != nil {
155		return x.Name
156	}
157	return ""
158}
159
160func (x *RouteConfiguration) GetVirtualHosts() []*VirtualHost {
161	if x != nil {
162		return x.VirtualHosts
163	}
164	return nil
165}
166
167func (x *RouteConfiguration) GetVhds() *Vhds {
168	if x != nil {
169		return x.Vhds
170	}
171	return nil
172}
173
174func (x *RouteConfiguration) GetInternalOnlyHeaders() []string {
175	if x != nil {
176		return x.InternalOnlyHeaders
177	}
178	return nil
179}
180
181func (x *RouteConfiguration) GetResponseHeadersToAdd() []*v3.HeaderValueOption {
182	if x != nil {
183		return x.ResponseHeadersToAdd
184	}
185	return nil
186}
187
188func (x *RouteConfiguration) GetResponseHeadersToRemove() []string {
189	if x != nil {
190		return x.ResponseHeadersToRemove
191	}
192	return nil
193}
194
195func (x *RouteConfiguration) GetRequestHeadersToAdd() []*v3.HeaderValueOption {
196	if x != nil {
197		return x.RequestHeadersToAdd
198	}
199	return nil
200}
201
202func (x *RouteConfiguration) GetRequestHeadersToRemove() []string {
203	if x != nil {
204		return x.RequestHeadersToRemove
205	}
206	return nil
207}
208
209func (x *RouteConfiguration) GetMostSpecificHeaderMutationsWins() bool {
210	if x != nil {
211		return x.MostSpecificHeaderMutationsWins
212	}
213	return false
214}
215
216func (x *RouteConfiguration) GetValidateClusters() *wrappers.BoolValue {
217	if x != nil {
218		return x.ValidateClusters
219	}
220	return nil
221}
222
223func (x *RouteConfiguration) GetMaxDirectResponseBodySizeBytes() *wrappers.UInt32Value {
224	if x != nil {
225		return x.MaxDirectResponseBodySizeBytes
226	}
227	return nil
228}
229
230func (x *RouteConfiguration) GetClusterSpecifierPlugins() []*ClusterSpecifierPlugin {
231	if x != nil {
232		return x.ClusterSpecifierPlugins
233	}
234	return nil
235}
236
237// Configuration for a cluster specifier plugin.
238type ClusterSpecifierPlugin struct {
239	state         protoimpl.MessageState
240	sizeCache     protoimpl.SizeCache
241	unknownFields protoimpl.UnknownFields
242
243	// The name of the plugin and its opaque configuration.
244	Extension *v3.TypedExtensionConfig `protobuf:"bytes,1,opt,name=extension,proto3" json:"extension,omitempty"`
245}
246
247func (x *ClusterSpecifierPlugin) Reset() {
248	*x = ClusterSpecifierPlugin{}
249	if protoimpl.UnsafeEnabled {
250		mi := &file_envoy_config_route_v3_route_proto_msgTypes[1]
251		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
252		ms.StoreMessageInfo(mi)
253	}
254}
255
256func (x *ClusterSpecifierPlugin) String() string {
257	return protoimpl.X.MessageStringOf(x)
258}
259
260func (*ClusterSpecifierPlugin) ProtoMessage() {}
261
262func (x *ClusterSpecifierPlugin) ProtoReflect() protoreflect.Message {
263	mi := &file_envoy_config_route_v3_route_proto_msgTypes[1]
264	if protoimpl.UnsafeEnabled && x != nil {
265		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
266		if ms.LoadMessageInfo() == nil {
267			ms.StoreMessageInfo(mi)
268		}
269		return ms
270	}
271	return mi.MessageOf(x)
272}
273
274// Deprecated: Use ClusterSpecifierPlugin.ProtoReflect.Descriptor instead.
275func (*ClusterSpecifierPlugin) Descriptor() ([]byte, []int) {
276	return file_envoy_config_route_v3_route_proto_rawDescGZIP(), []int{1}
277}
278
279func (x *ClusterSpecifierPlugin) GetExtension() *v3.TypedExtensionConfig {
280	if x != nil {
281		return x.Extension
282	}
283	return nil
284}
285
286type Vhds struct {
287	state         protoimpl.MessageState
288	sizeCache     protoimpl.SizeCache
289	unknownFields protoimpl.UnknownFields
290
291	// Configuration source specifier for VHDS.
292	ConfigSource *v3.ConfigSource `protobuf:"bytes,1,opt,name=config_source,json=configSource,proto3" json:"config_source,omitempty"`
293}
294
295func (x *Vhds) Reset() {
296	*x = Vhds{}
297	if protoimpl.UnsafeEnabled {
298		mi := &file_envoy_config_route_v3_route_proto_msgTypes[2]
299		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
300		ms.StoreMessageInfo(mi)
301	}
302}
303
304func (x *Vhds) String() string {
305	return protoimpl.X.MessageStringOf(x)
306}
307
308func (*Vhds) ProtoMessage() {}
309
310func (x *Vhds) ProtoReflect() protoreflect.Message {
311	mi := &file_envoy_config_route_v3_route_proto_msgTypes[2]
312	if protoimpl.UnsafeEnabled && x != nil {
313		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
314		if ms.LoadMessageInfo() == nil {
315			ms.StoreMessageInfo(mi)
316		}
317		return ms
318	}
319	return mi.MessageOf(x)
320}
321
322// Deprecated: Use Vhds.ProtoReflect.Descriptor instead.
323func (*Vhds) Descriptor() ([]byte, []int) {
324	return file_envoy_config_route_v3_route_proto_rawDescGZIP(), []int{2}
325}
326
327func (x *Vhds) GetConfigSource() *v3.ConfigSource {
328	if x != nil {
329		return x.ConfigSource
330	}
331	return nil
332}
333
334var File_envoy_config_route_v3_route_proto protoreflect.FileDescriptor
335
336var file_envoy_config_route_v3_route_proto_rawDesc = []byte{
337	0x0a, 0x21, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x72,
338	0x6f, 0x75, 0x74, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x70, 0x72,
339	0x6f, 0x74, 0x6f, 0x12, 0x15, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
340	0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x76, 0x33, 0x1a, 0x1f, 0x65, 0x6e, 0x76, 0x6f,
341	0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33,
342	0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x65, 0x6e, 0x76,
343	0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76,
344	0x33, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e,
345	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e,
346	0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x65, 0x78, 0x74, 0x65,
347	0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x65, 0x6e, 0x76,
348	0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2f,
349	0x76, 0x33, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
350	0x6e, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
351	0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70,
352	0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f,
353	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74,
354	0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61,
355	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69,
356	0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c,
357	0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70,
358	0x72, 0x6f, 0x74, 0x6f, 0x22, 0xed, 0x07, 0x0a, 0x12, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f,
359	0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e,
360	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
361	0x47, 0x0a, 0x0d, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x73,
362	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
363	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x56,
364	0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x52, 0x0c, 0x76, 0x69, 0x72, 0x74,
365	0x75, 0x61, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x04, 0x76, 0x68, 0x64, 0x73,
366	0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
367	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x56,
368	0x68, 0x64, 0x73, 0x52, 0x04, 0x76, 0x68, 0x64, 0x73, 0x12, 0x44, 0x0a, 0x15, 0x69, 0x6e, 0x74,
369	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65,
370	0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0x92, 0x01, 0x0a,
371	0x22, 0x08, 0x72, 0x06, 0xc0, 0x01, 0x01, 0xc8, 0x01, 0x00, 0x52, 0x13, 0x69, 0x6e, 0x74, 0x65,
372	0x72, 0x6e, 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12,
373	0x69, 0x0a, 0x17, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64,
374	0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
375	0x32, 0x27, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
376	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x56, 0x61,
377	0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xfa, 0x42, 0x06, 0x92, 0x01,
378	0x03, 0x10, 0xe8, 0x07, 0x52, 0x14, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65,
379	0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x12, 0x4d, 0x0a, 0x1a, 0x72, 0x65,
380	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74,
381	0x6f, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x10,
382	0xfa, 0x42, 0x0d, 0x92, 0x01, 0x0a, 0x22, 0x08, 0x72, 0x06, 0xc0, 0x01, 0x01, 0xc8, 0x01, 0x00,
383	0x52, 0x17, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
384	0x73, 0x54, 0x6f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x67, 0x0a, 0x16, 0x72, 0x65, 0x71,
385	0x75, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x5f,
386	0x61, 0x64, 0x64, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
387	0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33,
388	0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69,
389	0x6f, 0x6e, 0x42, 0x09, 0xfa, 0x42, 0x06, 0x92, 0x01, 0x03, 0x10, 0xe8, 0x07, 0x52, 0x13, 0x72,
390	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41,
391	0x64, 0x64, 0x12, 0x4b, 0x0a, 0x19, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65,
392	0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18,
393	0x08, 0x20, 0x03, 0x28, 0x09, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0x92, 0x01, 0x0a, 0x22, 0x08, 0x72,
394	0x06, 0xc0, 0x01, 0x01, 0xc8, 0x01, 0x00, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
395	0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12,
396	0x4c, 0x0a, 0x23, 0x6d, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63,
397	0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6d, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
398	0x73, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1f, 0x6d, 0x6f,
399	0x73, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
400	0x4d, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x47, 0x0a,
401	0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
402	0x72, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
403	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
404	0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c,
405	0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x69, 0x0a, 0x23, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x69,
406	0x72, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x62, 0x6f,
407	0x64, 0x79, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0b, 0x20,
408	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
409	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75,
410	0x65, 0x52, 0x1e, 0x6d, 0x61, 0x78, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
411	0x6f, 0x6e, 0x73, 0x65, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65,
412	0x73, 0x12, 0x69, 0x0a, 0x19, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x70, 0x65,
413	0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x0c,
414	0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e,
415	0x66, 0x69, 0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x6c, 0x75,
416	0x73, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x6c, 0x75,
417	0x67, 0x69, 0x6e, 0x52, 0x17, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63,
418	0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x3a, 0x26, 0x9a, 0xc5,
419	0x88, 0x1e, 0x21, 0x0a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76,
420	0x32, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61,
421	0x74, 0x69, 0x6f, 0x6e, 0x22, 0x62, 0x0a, 0x16, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53,
422	0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x48,
423	0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
424	0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
425	0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x45, 0x78,
426	0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x65,
427	0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x73, 0x0a, 0x04, 0x56, 0x68, 0x64, 0x73,
428	0x12, 0x51, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63,
429	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
430	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x43,
431	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05,
432	0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75,
433	0x72, 0x63, 0x65, 0x3a, 0x18, 0x9a, 0xc5, 0x88, 0x1e, 0x13, 0x0a, 0x11, 0x65, 0x6e, 0x76, 0x6f,
434	0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x56, 0x68, 0x64, 0x73, 0x42, 0x3b, 0x0a,
435	0x23, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65,
436	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74,
437	0x65, 0x2e, 0x76, 0x33, 0x42, 0x0a, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f,
438	0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
439	0x6f, 0x33,
440}
441
442var (
443	file_envoy_config_route_v3_route_proto_rawDescOnce sync.Once
444	file_envoy_config_route_v3_route_proto_rawDescData = file_envoy_config_route_v3_route_proto_rawDesc
445)
446
447func file_envoy_config_route_v3_route_proto_rawDescGZIP() []byte {
448	file_envoy_config_route_v3_route_proto_rawDescOnce.Do(func() {
449		file_envoy_config_route_v3_route_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_config_route_v3_route_proto_rawDescData)
450	})
451	return file_envoy_config_route_v3_route_proto_rawDescData
452}
453
454var file_envoy_config_route_v3_route_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
455var file_envoy_config_route_v3_route_proto_goTypes = []interface{}{
456	(*RouteConfiguration)(nil),      // 0: envoy.config.route.v3.RouteConfiguration
457	(*ClusterSpecifierPlugin)(nil),  // 1: envoy.config.route.v3.ClusterSpecifierPlugin
458	(*Vhds)(nil),                    // 2: envoy.config.route.v3.Vhds
459	(*VirtualHost)(nil),             // 3: envoy.config.route.v3.VirtualHost
460	(*v3.HeaderValueOption)(nil),    // 4: envoy.config.core.v3.HeaderValueOption
461	(*wrappers.BoolValue)(nil),      // 5: google.protobuf.BoolValue
462	(*wrappers.UInt32Value)(nil),    // 6: google.protobuf.UInt32Value
463	(*v3.TypedExtensionConfig)(nil), // 7: envoy.config.core.v3.TypedExtensionConfig
464	(*v3.ConfigSource)(nil),         // 8: envoy.config.core.v3.ConfigSource
465}
466var file_envoy_config_route_v3_route_proto_depIdxs = []int32{
467	3, // 0: envoy.config.route.v3.RouteConfiguration.virtual_hosts:type_name -> envoy.config.route.v3.VirtualHost
468	2, // 1: envoy.config.route.v3.RouteConfiguration.vhds:type_name -> envoy.config.route.v3.Vhds
469	4, // 2: envoy.config.route.v3.RouteConfiguration.response_headers_to_add:type_name -> envoy.config.core.v3.HeaderValueOption
470	4, // 3: envoy.config.route.v3.RouteConfiguration.request_headers_to_add:type_name -> envoy.config.core.v3.HeaderValueOption
471	5, // 4: envoy.config.route.v3.RouteConfiguration.validate_clusters:type_name -> google.protobuf.BoolValue
472	6, // 5: envoy.config.route.v3.RouteConfiguration.max_direct_response_body_size_bytes:type_name -> google.protobuf.UInt32Value
473	1, // 6: envoy.config.route.v3.RouteConfiguration.cluster_specifier_plugins:type_name -> envoy.config.route.v3.ClusterSpecifierPlugin
474	7, // 7: envoy.config.route.v3.ClusterSpecifierPlugin.extension:type_name -> envoy.config.core.v3.TypedExtensionConfig
475	8, // 8: envoy.config.route.v3.Vhds.config_source:type_name -> envoy.config.core.v3.ConfigSource
476	9, // [9:9] is the sub-list for method output_type
477	9, // [9:9] is the sub-list for method input_type
478	9, // [9:9] is the sub-list for extension type_name
479	9, // [9:9] is the sub-list for extension extendee
480	0, // [0:9] is the sub-list for field type_name
481}
482
483func init() { file_envoy_config_route_v3_route_proto_init() }
484func file_envoy_config_route_v3_route_proto_init() {
485	if File_envoy_config_route_v3_route_proto != nil {
486		return
487	}
488	file_envoy_config_route_v3_route_components_proto_init()
489	if !protoimpl.UnsafeEnabled {
490		file_envoy_config_route_v3_route_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
491			switch v := v.(*RouteConfiguration); i {
492			case 0:
493				return &v.state
494			case 1:
495				return &v.sizeCache
496			case 2:
497				return &v.unknownFields
498			default:
499				return nil
500			}
501		}
502		file_envoy_config_route_v3_route_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
503			switch v := v.(*ClusterSpecifierPlugin); i {
504			case 0:
505				return &v.state
506			case 1:
507				return &v.sizeCache
508			case 2:
509				return &v.unknownFields
510			default:
511				return nil
512			}
513		}
514		file_envoy_config_route_v3_route_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
515			switch v := v.(*Vhds); i {
516			case 0:
517				return &v.state
518			case 1:
519				return &v.sizeCache
520			case 2:
521				return &v.unknownFields
522			default:
523				return nil
524			}
525		}
526	}
527	type x struct{}
528	out := protoimpl.TypeBuilder{
529		File: protoimpl.DescBuilder{
530			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
531			RawDescriptor: file_envoy_config_route_v3_route_proto_rawDesc,
532			NumEnums:      0,
533			NumMessages:   3,
534			NumExtensions: 0,
535			NumServices:   0,
536		},
537		GoTypes:           file_envoy_config_route_v3_route_proto_goTypes,
538		DependencyIndexes: file_envoy_config_route_v3_route_proto_depIdxs,
539		MessageInfos:      file_envoy_config_route_v3_route_proto_msgTypes,
540	}.Build()
541	File_envoy_config_route_v3_route_proto = out.File
542	file_envoy_config_route_v3_route_proto_rawDesc = nil
543	file_envoy_config_route_v3_route_proto_goTypes = nil
544	file_envoy_config_route_v3_route_proto_depIdxs = nil
545}
546