1// Code generated by protoc-gen-go. DO NOT EDIT. 2// versions: 3// protoc-gen-go v1.25.0 4// protoc v3.19.1 5// source: envoy/api/v2/listener/listener_components.proto 6 7package envoy_api_v2_listener 8 9import ( 10 _ "github.com/cncf/xds/go/udpa/annotations" 11 auth "github.com/envoyproxy/go-control-plane/envoy/api/v2/auth" 12 core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" 13 _type "github.com/envoyproxy/go-control-plane/envoy/type" 14 _ "github.com/envoyproxy/protoc-gen-validate/validate" 15 proto "github.com/golang/protobuf/proto" 16 any "github.com/golang/protobuf/ptypes/any" 17 _struct "github.com/golang/protobuf/ptypes/struct" 18 wrappers "github.com/golang/protobuf/ptypes/wrappers" 19 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 20 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 21 reflect "reflect" 22 sync "sync" 23) 24 25const ( 26 // Verify that this generated code is sufficiently up-to-date. 27 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 28 // Verify that runtime/protoimpl is sufficiently up-to-date. 29 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 30) 31 32// This is a compile-time assertion that a sufficiently up-to-date version 33// of the legacy proto package is being used. 34const _ = proto.ProtoPackageIsVersion4 35 36type FilterChainMatch_ConnectionSourceType int32 37 38const ( 39 // Any connection source matches. 40 FilterChainMatch_ANY FilterChainMatch_ConnectionSourceType = 0 41 // Match a connection originating from the same host. 42 FilterChainMatch_LOCAL FilterChainMatch_ConnectionSourceType = 1 43 // Match a connection originating from a different host. 44 FilterChainMatch_EXTERNAL FilterChainMatch_ConnectionSourceType = 2 45) 46 47// Enum value maps for FilterChainMatch_ConnectionSourceType. 48var ( 49 FilterChainMatch_ConnectionSourceType_name = map[int32]string{ 50 0: "ANY", 51 1: "LOCAL", 52 2: "EXTERNAL", 53 } 54 FilterChainMatch_ConnectionSourceType_value = map[string]int32{ 55 "ANY": 0, 56 "LOCAL": 1, 57 "EXTERNAL": 2, 58 } 59) 60 61func (x FilterChainMatch_ConnectionSourceType) Enum() *FilterChainMatch_ConnectionSourceType { 62 p := new(FilterChainMatch_ConnectionSourceType) 63 *p = x 64 return p 65} 66 67func (x FilterChainMatch_ConnectionSourceType) String() string { 68 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 69} 70 71func (FilterChainMatch_ConnectionSourceType) Descriptor() protoreflect.EnumDescriptor { 72 return file_envoy_api_v2_listener_listener_components_proto_enumTypes[0].Descriptor() 73} 74 75func (FilterChainMatch_ConnectionSourceType) Type() protoreflect.EnumType { 76 return &file_envoy_api_v2_listener_listener_components_proto_enumTypes[0] 77} 78 79func (x FilterChainMatch_ConnectionSourceType) Number() protoreflect.EnumNumber { 80 return protoreflect.EnumNumber(x) 81} 82 83// Deprecated: Use FilterChainMatch_ConnectionSourceType.Descriptor instead. 84func (FilterChainMatch_ConnectionSourceType) EnumDescriptor() ([]byte, []int) { 85 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{1, 0} 86} 87 88type Filter struct { 89 state protoimpl.MessageState 90 sizeCache protoimpl.SizeCache 91 unknownFields protoimpl.UnknownFields 92 93 // The name of the filter to instantiate. The name must match a 94 // :ref:`supported filter <config_network_filters>`. 95 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 96 // Filter specific configuration which depends on the filter being 97 // instantiated. See the supported filters for further documentation. 98 // 99 // Types that are assignable to ConfigType: 100 // *Filter_Config 101 // *Filter_TypedConfig 102 ConfigType isFilter_ConfigType `protobuf_oneof:"config_type"` 103} 104 105func (x *Filter) Reset() { 106 *x = Filter{} 107 if protoimpl.UnsafeEnabled { 108 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[0] 109 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 110 ms.StoreMessageInfo(mi) 111 } 112} 113 114func (x *Filter) String() string { 115 return protoimpl.X.MessageStringOf(x) 116} 117 118func (*Filter) ProtoMessage() {} 119 120func (x *Filter) ProtoReflect() protoreflect.Message { 121 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[0] 122 if protoimpl.UnsafeEnabled && x != nil { 123 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 124 if ms.LoadMessageInfo() == nil { 125 ms.StoreMessageInfo(mi) 126 } 127 return ms 128 } 129 return mi.MessageOf(x) 130} 131 132// Deprecated: Use Filter.ProtoReflect.Descriptor instead. 133func (*Filter) Descriptor() ([]byte, []int) { 134 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{0} 135} 136 137func (x *Filter) GetName() string { 138 if x != nil { 139 return x.Name 140 } 141 return "" 142} 143 144func (m *Filter) GetConfigType() isFilter_ConfigType { 145 if m != nil { 146 return m.ConfigType 147 } 148 return nil 149} 150 151// Deprecated: Do not use. 152func (x *Filter) GetConfig() *_struct.Struct { 153 if x, ok := x.GetConfigType().(*Filter_Config); ok { 154 return x.Config 155 } 156 return nil 157} 158 159func (x *Filter) GetTypedConfig() *any.Any { 160 if x, ok := x.GetConfigType().(*Filter_TypedConfig); ok { 161 return x.TypedConfig 162 } 163 return nil 164} 165 166type isFilter_ConfigType interface { 167 isFilter_ConfigType() 168} 169 170type Filter_Config struct { 171 // Deprecated: Do not use. 172 Config *_struct.Struct `protobuf:"bytes,2,opt,name=config,proto3,oneof"` 173} 174 175type Filter_TypedConfig struct { 176 TypedConfig *any.Any `protobuf:"bytes,4,opt,name=typed_config,json=typedConfig,proto3,oneof"` 177} 178 179func (*Filter_Config) isFilter_ConfigType() {} 180 181func (*Filter_TypedConfig) isFilter_ConfigType() {} 182 183// Specifies the match criteria for selecting a specific filter chain for a 184// listener. 185// 186// In order for a filter chain to be selected, *ALL* of its criteria must be 187// fulfilled by the incoming connection, properties of which are set by the 188// networking stack and/or listener filters. 189// 190// The following order applies: 191// 192// 1. Destination port. 193// 2. Destination IP address. 194// 3. Server name (e.g. SNI for TLS protocol), 195// 4. Transport protocol. 196// 5. Application protocols (e.g. ALPN for TLS protocol). 197// 6. Source type (e.g. any, local or external network). 198// 7. Source IP address. 199// 8. Source port. 200// 201// For criteria that allow ranges or wildcards, the most specific value in any 202// of the configured filter chains that matches the incoming connection is going 203// to be used (e.g. for SNI ``www.example.com`` the most specific match would be 204// ``www.example.com``, then ``*.example.com``, then ``*.com``, then any filter 205// chain without ``server_names`` requirements). 206// 207// [#comment: Implemented rules are kept in the preference order, with deprecated fields 208// listed at the end, because that's how we want to list them in the docs. 209// 210// [#comment:TODO(PiotrSikora): Add support for configurable precedence of the rules] 211// [#next-free-field: 13] 212type FilterChainMatch struct { 213 state protoimpl.MessageState 214 sizeCache protoimpl.SizeCache 215 unknownFields protoimpl.UnknownFields 216 217 // Optional destination port to consider when use_original_dst is set on the 218 // listener in determining a filter chain match. 219 DestinationPort *wrappers.UInt32Value `protobuf:"bytes,8,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"` 220 // If non-empty, an IP address and prefix length to match addresses when the 221 // listener is bound to 0.0.0.0/:: or when use_original_dst is specified. 222 PrefixRanges []*core.CidrRange `protobuf:"bytes,3,rep,name=prefix_ranges,json=prefixRanges,proto3" json:"prefix_ranges,omitempty"` 223 // If non-empty, an IP address and suffix length to match addresses when the 224 // listener is bound to 0.0.0.0/:: or when use_original_dst is specified. 225 // [#not-implemented-hide:] 226 AddressSuffix string `protobuf:"bytes,4,opt,name=address_suffix,json=addressSuffix,proto3" json:"address_suffix,omitempty"` 227 // [#not-implemented-hide:] 228 SuffixLen *wrappers.UInt32Value `protobuf:"bytes,5,opt,name=suffix_len,json=suffixLen,proto3" json:"suffix_len,omitempty"` 229 // Specifies the connection source IP match type. Can be any, local or external network. 230 SourceType FilterChainMatch_ConnectionSourceType `protobuf:"varint,12,opt,name=source_type,json=sourceType,proto3,enum=envoy.api.v2.listener.FilterChainMatch_ConnectionSourceType" json:"source_type,omitempty"` 231 // The criteria is satisfied if the source IP address of the downstream 232 // connection is contained in at least one of the specified subnets. If the 233 // parameter is not specified or the list is empty, the source IP address is 234 // ignored. 235 SourcePrefixRanges []*core.CidrRange `protobuf:"bytes,6,rep,name=source_prefix_ranges,json=sourcePrefixRanges,proto3" json:"source_prefix_ranges,omitempty"` 236 // The criteria is satisfied if the source port of the downstream connection 237 // is contained in at least one of the specified ports. If the parameter is 238 // not specified, the source port is ignored. 239 SourcePorts []uint32 `protobuf:"varint,7,rep,packed,name=source_ports,json=sourcePorts,proto3" json:"source_ports,omitempty"` 240 // If non-empty, a list of server names (e.g. SNI for TLS protocol) to consider when determining 241 // a filter chain match. Those values will be compared against the server names of a new 242 // connection, when detected by one of the listener filters. 243 // 244 // The server name will be matched against all wildcard domains, i.e. ``www.example.com`` 245 // will be first matched against ``www.example.com``, then ``*.example.com``, then ``*.com``. 246 // 247 // Note that partial wildcards are not supported, and values like ``*w.example.com`` are invalid. 248 // 249 // .. attention:: 250 // 251 // See the :ref:`FAQ entry <faq_how_to_setup_sni>` on how to configure SNI for more 252 // information. 253 ServerNames []string `protobuf:"bytes,11,rep,name=server_names,json=serverNames,proto3" json:"server_names,omitempty"` 254 // If non-empty, a transport protocol to consider when determining a filter chain match. 255 // This value will be compared against the transport protocol of a new connection, when 256 // it's detected by one of the listener filters. 257 // 258 // Suggested values include: 259 // 260 // * ``raw_buffer`` - default, used when no transport protocol is detected, 261 // * ``tls`` - set by :ref:`envoy.filters.listener.tls_inspector <config_listener_filters_tls_inspector>` 262 // when TLS protocol is detected. 263 TransportProtocol string `protobuf:"bytes,9,opt,name=transport_protocol,json=transportProtocol,proto3" json:"transport_protocol,omitempty"` 264 // If non-empty, a list of application protocols (e.g. ALPN for TLS protocol) to consider when 265 // determining a filter chain match. Those values will be compared against the application 266 // protocols of a new connection, when detected by one of the listener filters. 267 // 268 // Suggested values include: 269 // 270 // * ``http/1.1`` - set by :ref:`envoy.filters.listener.tls_inspector 271 // <config_listener_filters_tls_inspector>`, 272 // * ``h2`` - set by :ref:`envoy.filters.listener.tls_inspector <config_listener_filters_tls_inspector>` 273 // 274 // .. attention:: 275 // 276 // Currently, only :ref:`TLS Inspector <config_listener_filters_tls_inspector>` provides 277 // application protocol detection based on the requested 278 // `ALPN <https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation>`_ values. 279 // 280 // However, the use of ALPN is pretty much limited to the HTTP/2 traffic on the Internet, 281 // and matching on values other than ``h2`` is going to lead to a lot of false negatives, 282 // unless all connecting clients are known to use ALPN. 283 ApplicationProtocols []string `protobuf:"bytes,10,rep,name=application_protocols,json=applicationProtocols,proto3" json:"application_protocols,omitempty"` 284} 285 286func (x *FilterChainMatch) Reset() { 287 *x = FilterChainMatch{} 288 if protoimpl.UnsafeEnabled { 289 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[1] 290 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 291 ms.StoreMessageInfo(mi) 292 } 293} 294 295func (x *FilterChainMatch) String() string { 296 return protoimpl.X.MessageStringOf(x) 297} 298 299func (*FilterChainMatch) ProtoMessage() {} 300 301func (x *FilterChainMatch) ProtoReflect() protoreflect.Message { 302 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[1] 303 if protoimpl.UnsafeEnabled && x != nil { 304 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 305 if ms.LoadMessageInfo() == nil { 306 ms.StoreMessageInfo(mi) 307 } 308 return ms 309 } 310 return mi.MessageOf(x) 311} 312 313// Deprecated: Use FilterChainMatch.ProtoReflect.Descriptor instead. 314func (*FilterChainMatch) Descriptor() ([]byte, []int) { 315 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{1} 316} 317 318func (x *FilterChainMatch) GetDestinationPort() *wrappers.UInt32Value { 319 if x != nil { 320 return x.DestinationPort 321 } 322 return nil 323} 324 325func (x *FilterChainMatch) GetPrefixRanges() []*core.CidrRange { 326 if x != nil { 327 return x.PrefixRanges 328 } 329 return nil 330} 331 332func (x *FilterChainMatch) GetAddressSuffix() string { 333 if x != nil { 334 return x.AddressSuffix 335 } 336 return "" 337} 338 339func (x *FilterChainMatch) GetSuffixLen() *wrappers.UInt32Value { 340 if x != nil { 341 return x.SuffixLen 342 } 343 return nil 344} 345 346func (x *FilterChainMatch) GetSourceType() FilterChainMatch_ConnectionSourceType { 347 if x != nil { 348 return x.SourceType 349 } 350 return FilterChainMatch_ANY 351} 352 353func (x *FilterChainMatch) GetSourcePrefixRanges() []*core.CidrRange { 354 if x != nil { 355 return x.SourcePrefixRanges 356 } 357 return nil 358} 359 360func (x *FilterChainMatch) GetSourcePorts() []uint32 { 361 if x != nil { 362 return x.SourcePorts 363 } 364 return nil 365} 366 367func (x *FilterChainMatch) GetServerNames() []string { 368 if x != nil { 369 return x.ServerNames 370 } 371 return nil 372} 373 374func (x *FilterChainMatch) GetTransportProtocol() string { 375 if x != nil { 376 return x.TransportProtocol 377 } 378 return "" 379} 380 381func (x *FilterChainMatch) GetApplicationProtocols() []string { 382 if x != nil { 383 return x.ApplicationProtocols 384 } 385 return nil 386} 387 388// A filter chain wraps a set of match criteria, an option TLS context, a set of filters, and 389// various other parameters. 390// [#next-free-field: 8] 391type FilterChain struct { 392 state protoimpl.MessageState 393 sizeCache protoimpl.SizeCache 394 unknownFields protoimpl.UnknownFields 395 396 // The criteria to use when matching a connection to this filter chain. 397 FilterChainMatch *FilterChainMatch `protobuf:"bytes,1,opt,name=filter_chain_match,json=filterChainMatch,proto3" json:"filter_chain_match,omitempty"` 398 // The TLS context for this filter chain. 399 // 400 // .. attention:: 401 // 402 // **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are 403 // set, `transport_socket` takes priority. 404 // 405 // Deprecated: Do not use. 406 TlsContext *auth.DownstreamTlsContext `protobuf:"bytes,2,opt,name=tls_context,json=tlsContext,proto3" json:"tls_context,omitempty"` 407 // A list of individual network filters that make up the filter chain for 408 // connections established with the listener. Order matters as the filters are 409 // processed sequentially as connection events happen. Note: If the filter 410 // list is empty, the connection will close by default. 411 Filters []*Filter `protobuf:"bytes,3,rep,name=filters,proto3" json:"filters,omitempty"` 412 // Whether the listener should expect a PROXY protocol V1 header on new 413 // connections. If this option is enabled, the listener will assume that that 414 // remote address of the connection is the one specified in the header. Some 415 // load balancers including the AWS ELB support this option. If the option is 416 // absent or set to false, Envoy will use the physical peer address of the 417 // connection as the remote address. 418 UseProxyProto *wrappers.BoolValue `protobuf:"bytes,4,opt,name=use_proxy_proto,json=useProxyProto,proto3" json:"use_proxy_proto,omitempty"` 419 // [#not-implemented-hide:] filter chain metadata. 420 Metadata *core.Metadata `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` 421 // Optional custom transport socket implementation to use for downstream connections. 422 // To setup TLS, set a transport socket with name `tls` and 423 // :ref:`DownstreamTlsContext <envoy_api_msg_auth.DownstreamTlsContext>` in the `typed_config`. 424 // If no transport socket configuration is specified, new connections 425 // will be set up with plaintext. 426 TransportSocket *core.TransportSocket `protobuf:"bytes,6,opt,name=transport_socket,json=transportSocket,proto3" json:"transport_socket,omitempty"` 427 // [#not-implemented-hide:] The unique name (or empty) by which this filter chain is known. If no 428 // name is provided, Envoy will allocate an internal UUID for the filter chain. If the filter 429 // chain is to be dynamically updated or removed via FCDS a unique name must be provided. 430 Name string `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"` 431} 432 433func (x *FilterChain) Reset() { 434 *x = FilterChain{} 435 if protoimpl.UnsafeEnabled { 436 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[2] 437 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 438 ms.StoreMessageInfo(mi) 439 } 440} 441 442func (x *FilterChain) String() string { 443 return protoimpl.X.MessageStringOf(x) 444} 445 446func (*FilterChain) ProtoMessage() {} 447 448func (x *FilterChain) ProtoReflect() protoreflect.Message { 449 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[2] 450 if protoimpl.UnsafeEnabled && x != nil { 451 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 452 if ms.LoadMessageInfo() == nil { 453 ms.StoreMessageInfo(mi) 454 } 455 return ms 456 } 457 return mi.MessageOf(x) 458} 459 460// Deprecated: Use FilterChain.ProtoReflect.Descriptor instead. 461func (*FilterChain) Descriptor() ([]byte, []int) { 462 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{2} 463} 464 465func (x *FilterChain) GetFilterChainMatch() *FilterChainMatch { 466 if x != nil { 467 return x.FilterChainMatch 468 } 469 return nil 470} 471 472// Deprecated: Do not use. 473func (x *FilterChain) GetTlsContext() *auth.DownstreamTlsContext { 474 if x != nil { 475 return x.TlsContext 476 } 477 return nil 478} 479 480func (x *FilterChain) GetFilters() []*Filter { 481 if x != nil { 482 return x.Filters 483 } 484 return nil 485} 486 487func (x *FilterChain) GetUseProxyProto() *wrappers.BoolValue { 488 if x != nil { 489 return x.UseProxyProto 490 } 491 return nil 492} 493 494func (x *FilterChain) GetMetadata() *core.Metadata { 495 if x != nil { 496 return x.Metadata 497 } 498 return nil 499} 500 501func (x *FilterChain) GetTransportSocket() *core.TransportSocket { 502 if x != nil { 503 return x.TransportSocket 504 } 505 return nil 506} 507 508func (x *FilterChain) GetName() string { 509 if x != nil { 510 return x.Name 511 } 512 return "" 513} 514 515// Listener filter chain match configuration. This is a recursive structure which allows complex 516// nested match configurations to be built using various logical operators. 517// 518// Examples: 519// 520// * Matches if the destination port is 3306. 521// 522// .. code-block:: yaml 523// 524// destination_port_range: 525// start: 3306 526// end: 3307 527// 528// * Matches if the destination port is 3306 or 15000. 529// 530// .. code-block:: yaml 531// 532// or_match: 533// rules: 534// - destination_port_range: 535// start: 3306 536// end: 3307 537// - destination_port_range: 538// start: 15000 539// end: 15001 540// 541// [#next-free-field: 6] 542type ListenerFilterChainMatchPredicate struct { 543 state protoimpl.MessageState 544 sizeCache protoimpl.SizeCache 545 unknownFields protoimpl.UnknownFields 546 547 // Types that are assignable to Rule: 548 // *ListenerFilterChainMatchPredicate_OrMatch 549 // *ListenerFilterChainMatchPredicate_AndMatch 550 // *ListenerFilterChainMatchPredicate_NotMatch 551 // *ListenerFilterChainMatchPredicate_AnyMatch 552 // *ListenerFilterChainMatchPredicate_DestinationPortRange 553 Rule isListenerFilterChainMatchPredicate_Rule `protobuf_oneof:"rule"` 554} 555 556func (x *ListenerFilterChainMatchPredicate) Reset() { 557 *x = ListenerFilterChainMatchPredicate{} 558 if protoimpl.UnsafeEnabled { 559 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[3] 560 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 561 ms.StoreMessageInfo(mi) 562 } 563} 564 565func (x *ListenerFilterChainMatchPredicate) String() string { 566 return protoimpl.X.MessageStringOf(x) 567} 568 569func (*ListenerFilterChainMatchPredicate) ProtoMessage() {} 570 571func (x *ListenerFilterChainMatchPredicate) ProtoReflect() protoreflect.Message { 572 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[3] 573 if protoimpl.UnsafeEnabled && x != nil { 574 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 575 if ms.LoadMessageInfo() == nil { 576 ms.StoreMessageInfo(mi) 577 } 578 return ms 579 } 580 return mi.MessageOf(x) 581} 582 583// Deprecated: Use ListenerFilterChainMatchPredicate.ProtoReflect.Descriptor instead. 584func (*ListenerFilterChainMatchPredicate) Descriptor() ([]byte, []int) { 585 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{3} 586} 587 588func (m *ListenerFilterChainMatchPredicate) GetRule() isListenerFilterChainMatchPredicate_Rule { 589 if m != nil { 590 return m.Rule 591 } 592 return nil 593} 594 595func (x *ListenerFilterChainMatchPredicate) GetOrMatch() *ListenerFilterChainMatchPredicate_MatchSet { 596 if x, ok := x.GetRule().(*ListenerFilterChainMatchPredicate_OrMatch); ok { 597 return x.OrMatch 598 } 599 return nil 600} 601 602func (x *ListenerFilterChainMatchPredicate) GetAndMatch() *ListenerFilterChainMatchPredicate_MatchSet { 603 if x, ok := x.GetRule().(*ListenerFilterChainMatchPredicate_AndMatch); ok { 604 return x.AndMatch 605 } 606 return nil 607} 608 609func (x *ListenerFilterChainMatchPredicate) GetNotMatch() *ListenerFilterChainMatchPredicate { 610 if x, ok := x.GetRule().(*ListenerFilterChainMatchPredicate_NotMatch); ok { 611 return x.NotMatch 612 } 613 return nil 614} 615 616func (x *ListenerFilterChainMatchPredicate) GetAnyMatch() bool { 617 if x, ok := x.GetRule().(*ListenerFilterChainMatchPredicate_AnyMatch); ok { 618 return x.AnyMatch 619 } 620 return false 621} 622 623func (x *ListenerFilterChainMatchPredicate) GetDestinationPortRange() *_type.Int32Range { 624 if x, ok := x.GetRule().(*ListenerFilterChainMatchPredicate_DestinationPortRange); ok { 625 return x.DestinationPortRange 626 } 627 return nil 628} 629 630type isListenerFilterChainMatchPredicate_Rule interface { 631 isListenerFilterChainMatchPredicate_Rule() 632} 633 634type ListenerFilterChainMatchPredicate_OrMatch struct { 635 // A set that describes a logical OR. If any member of the set matches, the match configuration 636 // matches. 637 OrMatch *ListenerFilterChainMatchPredicate_MatchSet `protobuf:"bytes,1,opt,name=or_match,json=orMatch,proto3,oneof"` 638} 639 640type ListenerFilterChainMatchPredicate_AndMatch struct { 641 // A set that describes a logical AND. If all members of the set match, the match configuration 642 // matches. 643 AndMatch *ListenerFilterChainMatchPredicate_MatchSet `protobuf:"bytes,2,opt,name=and_match,json=andMatch,proto3,oneof"` 644} 645 646type ListenerFilterChainMatchPredicate_NotMatch struct { 647 // A negation match. The match configuration will match if the negated match condition matches. 648 NotMatch *ListenerFilterChainMatchPredicate `protobuf:"bytes,3,opt,name=not_match,json=notMatch,proto3,oneof"` 649} 650 651type ListenerFilterChainMatchPredicate_AnyMatch struct { 652 // The match configuration will always match. 653 AnyMatch bool `protobuf:"varint,4,opt,name=any_match,json=anyMatch,proto3,oneof"` 654} 655 656type ListenerFilterChainMatchPredicate_DestinationPortRange struct { 657 // Match destination port. Particularly, the match evaluation must use the recovered local port if 658 // the owning listener filter is after :ref:`an original_dst listener filter <config_listener_filters_original_dst>`. 659 DestinationPortRange *_type.Int32Range `protobuf:"bytes,5,opt,name=destination_port_range,json=destinationPortRange,proto3,oneof"` 660} 661 662func (*ListenerFilterChainMatchPredicate_OrMatch) isListenerFilterChainMatchPredicate_Rule() {} 663 664func (*ListenerFilterChainMatchPredicate_AndMatch) isListenerFilterChainMatchPredicate_Rule() {} 665 666func (*ListenerFilterChainMatchPredicate_NotMatch) isListenerFilterChainMatchPredicate_Rule() {} 667 668func (*ListenerFilterChainMatchPredicate_AnyMatch) isListenerFilterChainMatchPredicate_Rule() {} 669 670func (*ListenerFilterChainMatchPredicate_DestinationPortRange) isListenerFilterChainMatchPredicate_Rule() { 671} 672 673type ListenerFilter struct { 674 state protoimpl.MessageState 675 sizeCache protoimpl.SizeCache 676 unknownFields protoimpl.UnknownFields 677 678 // The name of the filter to instantiate. The name must match a 679 // :ref:`supported filter <config_listener_filters>`. 680 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 681 // Filter specific configuration which depends on the filter being instantiated. 682 // See the supported filters for further documentation. 683 // 684 // Types that are assignable to ConfigType: 685 // *ListenerFilter_Config 686 // *ListenerFilter_TypedConfig 687 ConfigType isListenerFilter_ConfigType `protobuf_oneof:"config_type"` 688 // Optional match predicate used to disable the filter. The filter is enabled when this field is empty. 689 // See :ref:`ListenerFilterChainMatchPredicate <envoy_api_msg_listener.ListenerFilterChainMatchPredicate>` 690 // for further examples. 691 FilterDisabled *ListenerFilterChainMatchPredicate `protobuf:"bytes,4,opt,name=filter_disabled,json=filterDisabled,proto3" json:"filter_disabled,omitempty"` 692} 693 694func (x *ListenerFilter) Reset() { 695 *x = ListenerFilter{} 696 if protoimpl.UnsafeEnabled { 697 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[4] 698 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 699 ms.StoreMessageInfo(mi) 700 } 701} 702 703func (x *ListenerFilter) String() string { 704 return protoimpl.X.MessageStringOf(x) 705} 706 707func (*ListenerFilter) ProtoMessage() {} 708 709func (x *ListenerFilter) ProtoReflect() protoreflect.Message { 710 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[4] 711 if protoimpl.UnsafeEnabled && x != nil { 712 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 713 if ms.LoadMessageInfo() == nil { 714 ms.StoreMessageInfo(mi) 715 } 716 return ms 717 } 718 return mi.MessageOf(x) 719} 720 721// Deprecated: Use ListenerFilter.ProtoReflect.Descriptor instead. 722func (*ListenerFilter) Descriptor() ([]byte, []int) { 723 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{4} 724} 725 726func (x *ListenerFilter) GetName() string { 727 if x != nil { 728 return x.Name 729 } 730 return "" 731} 732 733func (m *ListenerFilter) GetConfigType() isListenerFilter_ConfigType { 734 if m != nil { 735 return m.ConfigType 736 } 737 return nil 738} 739 740// Deprecated: Do not use. 741func (x *ListenerFilter) GetConfig() *_struct.Struct { 742 if x, ok := x.GetConfigType().(*ListenerFilter_Config); ok { 743 return x.Config 744 } 745 return nil 746} 747 748func (x *ListenerFilter) GetTypedConfig() *any.Any { 749 if x, ok := x.GetConfigType().(*ListenerFilter_TypedConfig); ok { 750 return x.TypedConfig 751 } 752 return nil 753} 754 755func (x *ListenerFilter) GetFilterDisabled() *ListenerFilterChainMatchPredicate { 756 if x != nil { 757 return x.FilterDisabled 758 } 759 return nil 760} 761 762type isListenerFilter_ConfigType interface { 763 isListenerFilter_ConfigType() 764} 765 766type ListenerFilter_Config struct { 767 // Deprecated: Do not use. 768 Config *_struct.Struct `protobuf:"bytes,2,opt,name=config,proto3,oneof"` 769} 770 771type ListenerFilter_TypedConfig struct { 772 TypedConfig *any.Any `protobuf:"bytes,3,opt,name=typed_config,json=typedConfig,proto3,oneof"` 773} 774 775func (*ListenerFilter_Config) isListenerFilter_ConfigType() {} 776 777func (*ListenerFilter_TypedConfig) isListenerFilter_ConfigType() {} 778 779// A set of match configurations used for logical operations. 780type ListenerFilterChainMatchPredicate_MatchSet struct { 781 state protoimpl.MessageState 782 sizeCache protoimpl.SizeCache 783 unknownFields protoimpl.UnknownFields 784 785 // The list of rules that make up the set. 786 Rules []*ListenerFilterChainMatchPredicate `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"` 787} 788 789func (x *ListenerFilterChainMatchPredicate_MatchSet) Reset() { 790 *x = ListenerFilterChainMatchPredicate_MatchSet{} 791 if protoimpl.UnsafeEnabled { 792 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[5] 793 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 794 ms.StoreMessageInfo(mi) 795 } 796} 797 798func (x *ListenerFilterChainMatchPredicate_MatchSet) String() string { 799 return protoimpl.X.MessageStringOf(x) 800} 801 802func (*ListenerFilterChainMatchPredicate_MatchSet) ProtoMessage() {} 803 804func (x *ListenerFilterChainMatchPredicate_MatchSet) ProtoReflect() protoreflect.Message { 805 mi := &file_envoy_api_v2_listener_listener_components_proto_msgTypes[5] 806 if protoimpl.UnsafeEnabled && x != nil { 807 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 808 if ms.LoadMessageInfo() == nil { 809 ms.StoreMessageInfo(mi) 810 } 811 return ms 812 } 813 return mi.MessageOf(x) 814} 815 816// Deprecated: Use ListenerFilterChainMatchPredicate_MatchSet.ProtoReflect.Descriptor instead. 817func (*ListenerFilterChainMatchPredicate_MatchSet) Descriptor() ([]byte, []int) { 818 return file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP(), []int{3, 0} 819} 820 821func (x *ListenerFilterChainMatchPredicate_MatchSet) GetRules() []*ListenerFilterChainMatchPredicate { 822 if x != nil { 823 return x.Rules 824 } 825 return nil 826} 827 828var File_envoy_api_v2_listener_listener_components_proto protoreflect.FileDescriptor 829 830var file_envoy_api_v2_listener_listener_components_proto_rawDesc = []byte{ 831 0x0a, 0x2f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x6c, 832 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 833 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 834 0x6f, 0x12, 0x15, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 835 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x1a, 0x1b, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 836 0x61, 0x70, 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x74, 0x6c, 0x73, 0x2e, 837 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 838 0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 839 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x61, 0x70, 840 0x69, 0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 841 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 842 0x2f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 843 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 844 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 845 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 846 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 847 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 848 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 849 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x2e, 850 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 851 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 852 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 853 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xac, 0x01, 854 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 855 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x20, 0x01, 0x52, 856 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 857 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 858 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x02, 859 0x18, 0x01, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x39, 0x0a, 0x0c, 860 0x74, 0x79, 0x70, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 861 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 862 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x48, 0x00, 0x52, 0x0b, 0x74, 0x79, 0x70, 0x65, 863 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 864 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0xe1, 0x05, 0x0a, 865 0x10, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 866 0x68, 0x12, 0x54, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 867 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 868 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 869 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x2a, 0x06, 870 0x18, 0xff, 0xff, 0x03, 0x28, 0x01, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 871 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x41, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x66, 0x69, 872 0x78, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 873 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 874 0x72, 0x65, 0x2e, 0x43, 0x69, 0x64, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0c, 0x70, 0x72, 875 0x65, 0x66, 0x69, 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x64, 876 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x18, 0x04, 0x20, 0x01, 877 0x28, 0x09, 0x52, 0x0d, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x75, 0x66, 0x66, 0x69, 878 0x78, 0x12, 0x3b, 0x0a, 0x0a, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x5f, 0x6c, 0x65, 0x6e, 0x18, 879 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 880 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 881 0x6c, 0x75, 0x65, 0x52, 0x09, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x4c, 0x65, 0x6e, 0x12, 0x67, 882 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 883 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 884 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2e, 0x46, 0x69, 0x6c, 0x74, 885 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x43, 0x6f, 0x6e, 886 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 887 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x73, 0x6f, 0x75, 888 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4e, 0x0a, 0x14, 0x73, 0x6f, 0x75, 0x72, 0x63, 889 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 890 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 891 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x69, 0x64, 0x72, 0x52, 0x61, 892 0x6e, 0x67, 0x65, 0x52, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 893 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 894 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x42, 0x10, 0xfa, 895 0x42, 0x0d, 0x92, 0x01, 0x0a, 0x22, 0x08, 0x2a, 0x06, 0x18, 0xff, 0xff, 0x03, 0x28, 0x01, 0x52, 896 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 897 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 898 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 899 0x2d, 0x0a, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x70, 0x72, 0x6f, 900 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x74, 0x72, 0x61, 901 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x33, 902 0x0a, 0x15, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 903 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 904 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 905 0x6f, 0x6c, 0x73, 0x22, 0x55, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 906 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x41, 907 0x4e, 0x59, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x1a, 908 0x1b, 0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x15, 0x0a, 0x13, 0x53, 0x41, 0x4d, 0x45, 0x5f, 0x49, 0x50, 909 0x5f, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x4f, 0x50, 0x42, 0x41, 0x43, 0x4b, 0x12, 0x0c, 0x0a, 0x08, 910 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 911 0x22, 0xcb, 0x03, 0x0a, 0x0b, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 912 0x12, 0x55, 0x0a, 0x12, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 913 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 914 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 915 0x65, 0x6e, 0x65, 0x72, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 916 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x10, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 917 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x4c, 0x0a, 0x0b, 0x74, 0x6c, 0x73, 0x5f, 0x63, 918 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 919 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x61, 0x75, 0x74, 0x68, 920 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x6c, 0x73, 0x43, 0x6f, 921 0x6e, 0x74, 0x65, 0x78, 0x74, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x74, 0x6c, 0x73, 0x43, 0x6f, 922 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x37, 0x0a, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 923 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 924 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2e, 0x46, 925 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x12, 0x42, 926 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x74, 927 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 928 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 929 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x75, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x50, 0x72, 0x6f, 930 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 931 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 932 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 933 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x10, 0x74, 934 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 935 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 936 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 937 0x6f, 0x72, 0x74, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 938 0x70, 0x6f, 0x72, 0x74, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 939 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa9, 940 0x04, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 941 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 942 0x63, 0x61, 0x74, 0x65, 0x12, 0x5e, 0x0a, 0x08, 0x6f, 0x72, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 943 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 944 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2e, 0x4c, 945 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 946 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 947 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x72, 0x4d, 948 0x61, 0x74, 0x63, 0x68, 0x12, 0x60, 0x0a, 0x09, 0x61, 0x6e, 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63, 949 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 950 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2e, 951 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 952 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 953 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x08, 0x61, 0x6e, 954 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x57, 0x0a, 0x09, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 955 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 956 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 957 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 958 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 959 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 960 0x26, 0x0a, 0x09, 0x61, 0x6e, 0x79, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 961 0x28, 0x08, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x6a, 0x02, 0x08, 0x01, 0x48, 0x00, 0x52, 0x08, 0x61, 962 0x6e, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x4e, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x74, 0x69, 963 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 964 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 965 0x74, 0x79, 0x70, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 966 0x00, 0x52, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 967 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x64, 0x0a, 0x08, 0x4d, 0x61, 0x74, 0x63, 0x68, 968 0x53, 0x65, 0x74, 0x12, 0x58, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 969 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 970 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 971 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x61, 972 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x42, 0x08, 0xfa, 0x42, 973 0x05, 0x92, 0x01, 0x02, 0x08, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x42, 0x0b, 0x0a, 974 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0x91, 0x02, 0x0a, 0x0e, 0x4c, 975 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 976 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 977 0x72, 0x02, 0x20, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x63, 0x6f, 978 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 979 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 980 0x75, 0x63, 0x74, 0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 981 0x67, 0x12, 0x39, 0x0a, 0x0c, 0x74, 0x79, 0x70, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 982 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 983 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x48, 0x00, 0x52, 984 0x0b, 0x74, 0x79, 0x70, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x61, 0x0a, 0x0f, 985 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 986 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 987 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x2e, 0x4c, 0x69, 988 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 989 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 990 0x0e, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 991 0x0d, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x9c, 992 0x01, 0x0a, 0x23, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 993 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x32, 0x2e, 0x6c, 0x69, 994 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x42, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 995 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 996 0x01, 0xaa, 0x02, 0x17, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x32, 997 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x4e, 0x53, 0xea, 0x02, 0x17, 0x45, 0x6e, 998 0x76, 0x6f, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 999 0x6e, 0x65, 0x72, 0x4e, 0x53, 0xf2, 0x98, 0xfe, 0x8f, 0x05, 0x1a, 0x12, 0x18, 0x65, 0x6e, 0x76, 1000 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 1001 0x65, 0x72, 0x2e, 0x76, 0x33, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 1002 0x72, 0x6f, 0x74, 0x6f, 0x33, 1003} 1004 1005var ( 1006 file_envoy_api_v2_listener_listener_components_proto_rawDescOnce sync.Once 1007 file_envoy_api_v2_listener_listener_components_proto_rawDescData = file_envoy_api_v2_listener_listener_components_proto_rawDesc 1008) 1009 1010func file_envoy_api_v2_listener_listener_components_proto_rawDescGZIP() []byte { 1011 file_envoy_api_v2_listener_listener_components_proto_rawDescOnce.Do(func() { 1012 file_envoy_api_v2_listener_listener_components_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_api_v2_listener_listener_components_proto_rawDescData) 1013 }) 1014 return file_envoy_api_v2_listener_listener_components_proto_rawDescData 1015} 1016 1017var file_envoy_api_v2_listener_listener_components_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 1018var file_envoy_api_v2_listener_listener_components_proto_msgTypes = make([]protoimpl.MessageInfo, 6) 1019var file_envoy_api_v2_listener_listener_components_proto_goTypes = []interface{}{ 1020 (FilterChainMatch_ConnectionSourceType)(0), // 0: envoy.api.v2.listener.FilterChainMatch.ConnectionSourceType 1021 (*Filter)(nil), // 1: envoy.api.v2.listener.Filter 1022 (*FilterChainMatch)(nil), // 2: envoy.api.v2.listener.FilterChainMatch 1023 (*FilterChain)(nil), // 3: envoy.api.v2.listener.FilterChain 1024 (*ListenerFilterChainMatchPredicate)(nil), // 4: envoy.api.v2.listener.ListenerFilterChainMatchPredicate 1025 (*ListenerFilter)(nil), // 5: envoy.api.v2.listener.ListenerFilter 1026 (*ListenerFilterChainMatchPredicate_MatchSet)(nil), // 6: envoy.api.v2.listener.ListenerFilterChainMatchPredicate.MatchSet 1027 (*_struct.Struct)(nil), // 7: google.protobuf.Struct 1028 (*any.Any)(nil), // 8: google.protobuf.Any 1029 (*wrappers.UInt32Value)(nil), // 9: google.protobuf.UInt32Value 1030 (*core.CidrRange)(nil), // 10: envoy.api.v2.core.CidrRange 1031 (*auth.DownstreamTlsContext)(nil), // 11: envoy.api.v2.auth.DownstreamTlsContext 1032 (*wrappers.BoolValue)(nil), // 12: google.protobuf.BoolValue 1033 (*core.Metadata)(nil), // 13: envoy.api.v2.core.Metadata 1034 (*core.TransportSocket)(nil), // 14: envoy.api.v2.core.TransportSocket 1035 (*_type.Int32Range)(nil), // 15: envoy.type.Int32Range 1036} 1037var file_envoy_api_v2_listener_listener_components_proto_depIdxs = []int32{ 1038 7, // 0: envoy.api.v2.listener.Filter.config:type_name -> google.protobuf.Struct 1039 8, // 1: envoy.api.v2.listener.Filter.typed_config:type_name -> google.protobuf.Any 1040 9, // 2: envoy.api.v2.listener.FilterChainMatch.destination_port:type_name -> google.protobuf.UInt32Value 1041 10, // 3: envoy.api.v2.listener.FilterChainMatch.prefix_ranges:type_name -> envoy.api.v2.core.CidrRange 1042 9, // 4: envoy.api.v2.listener.FilterChainMatch.suffix_len:type_name -> google.protobuf.UInt32Value 1043 0, // 5: envoy.api.v2.listener.FilterChainMatch.source_type:type_name -> envoy.api.v2.listener.FilterChainMatch.ConnectionSourceType 1044 10, // 6: envoy.api.v2.listener.FilterChainMatch.source_prefix_ranges:type_name -> envoy.api.v2.core.CidrRange 1045 2, // 7: envoy.api.v2.listener.FilterChain.filter_chain_match:type_name -> envoy.api.v2.listener.FilterChainMatch 1046 11, // 8: envoy.api.v2.listener.FilterChain.tls_context:type_name -> envoy.api.v2.auth.DownstreamTlsContext 1047 1, // 9: envoy.api.v2.listener.FilterChain.filters:type_name -> envoy.api.v2.listener.Filter 1048 12, // 10: envoy.api.v2.listener.FilterChain.use_proxy_proto:type_name -> google.protobuf.BoolValue 1049 13, // 11: envoy.api.v2.listener.FilterChain.metadata:type_name -> envoy.api.v2.core.Metadata 1050 14, // 12: envoy.api.v2.listener.FilterChain.transport_socket:type_name -> envoy.api.v2.core.TransportSocket 1051 6, // 13: envoy.api.v2.listener.ListenerFilterChainMatchPredicate.or_match:type_name -> envoy.api.v2.listener.ListenerFilterChainMatchPredicate.MatchSet 1052 6, // 14: envoy.api.v2.listener.ListenerFilterChainMatchPredicate.and_match:type_name -> envoy.api.v2.listener.ListenerFilterChainMatchPredicate.MatchSet 1053 4, // 15: envoy.api.v2.listener.ListenerFilterChainMatchPredicate.not_match:type_name -> envoy.api.v2.listener.ListenerFilterChainMatchPredicate 1054 15, // 16: envoy.api.v2.listener.ListenerFilterChainMatchPredicate.destination_port_range:type_name -> envoy.type.Int32Range 1055 7, // 17: envoy.api.v2.listener.ListenerFilter.config:type_name -> google.protobuf.Struct 1056 8, // 18: envoy.api.v2.listener.ListenerFilter.typed_config:type_name -> google.protobuf.Any 1057 4, // 19: envoy.api.v2.listener.ListenerFilter.filter_disabled:type_name -> envoy.api.v2.listener.ListenerFilterChainMatchPredicate 1058 4, // 20: envoy.api.v2.listener.ListenerFilterChainMatchPredicate.MatchSet.rules:type_name -> envoy.api.v2.listener.ListenerFilterChainMatchPredicate 1059 21, // [21:21] is the sub-list for method output_type 1060 21, // [21:21] is the sub-list for method input_type 1061 21, // [21:21] is the sub-list for extension type_name 1062 21, // [21:21] is the sub-list for extension extendee 1063 0, // [0:21] is the sub-list for field type_name 1064} 1065 1066func init() { file_envoy_api_v2_listener_listener_components_proto_init() } 1067func file_envoy_api_v2_listener_listener_components_proto_init() { 1068 if File_envoy_api_v2_listener_listener_components_proto != nil { 1069 return 1070 } 1071 if !protoimpl.UnsafeEnabled { 1072 file_envoy_api_v2_listener_listener_components_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1073 switch v := v.(*Filter); i { 1074 case 0: 1075 return &v.state 1076 case 1: 1077 return &v.sizeCache 1078 case 2: 1079 return &v.unknownFields 1080 default: 1081 return nil 1082 } 1083 } 1084 file_envoy_api_v2_listener_listener_components_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1085 switch v := v.(*FilterChainMatch); i { 1086 case 0: 1087 return &v.state 1088 case 1: 1089 return &v.sizeCache 1090 case 2: 1091 return &v.unknownFields 1092 default: 1093 return nil 1094 } 1095 } 1096 file_envoy_api_v2_listener_listener_components_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1097 switch v := v.(*FilterChain); i { 1098 case 0: 1099 return &v.state 1100 case 1: 1101 return &v.sizeCache 1102 case 2: 1103 return &v.unknownFields 1104 default: 1105 return nil 1106 } 1107 } 1108 file_envoy_api_v2_listener_listener_components_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1109 switch v := v.(*ListenerFilterChainMatchPredicate); i { 1110 case 0: 1111 return &v.state 1112 case 1: 1113 return &v.sizeCache 1114 case 2: 1115 return &v.unknownFields 1116 default: 1117 return nil 1118 } 1119 } 1120 file_envoy_api_v2_listener_listener_components_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1121 switch v := v.(*ListenerFilter); i { 1122 case 0: 1123 return &v.state 1124 case 1: 1125 return &v.sizeCache 1126 case 2: 1127 return &v.unknownFields 1128 default: 1129 return nil 1130 } 1131 } 1132 file_envoy_api_v2_listener_listener_components_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1133 switch v := v.(*ListenerFilterChainMatchPredicate_MatchSet); i { 1134 case 0: 1135 return &v.state 1136 case 1: 1137 return &v.sizeCache 1138 case 2: 1139 return &v.unknownFields 1140 default: 1141 return nil 1142 } 1143 } 1144 } 1145 file_envoy_api_v2_listener_listener_components_proto_msgTypes[0].OneofWrappers = []interface{}{ 1146 (*Filter_Config)(nil), 1147 (*Filter_TypedConfig)(nil), 1148 } 1149 file_envoy_api_v2_listener_listener_components_proto_msgTypes[3].OneofWrappers = []interface{}{ 1150 (*ListenerFilterChainMatchPredicate_OrMatch)(nil), 1151 (*ListenerFilterChainMatchPredicate_AndMatch)(nil), 1152 (*ListenerFilterChainMatchPredicate_NotMatch)(nil), 1153 (*ListenerFilterChainMatchPredicate_AnyMatch)(nil), 1154 (*ListenerFilterChainMatchPredicate_DestinationPortRange)(nil), 1155 } 1156 file_envoy_api_v2_listener_listener_components_proto_msgTypes[4].OneofWrappers = []interface{}{ 1157 (*ListenerFilter_Config)(nil), 1158 (*ListenerFilter_TypedConfig)(nil), 1159 } 1160 type x struct{} 1161 out := protoimpl.TypeBuilder{ 1162 File: protoimpl.DescBuilder{ 1163 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1164 RawDescriptor: file_envoy_api_v2_listener_listener_components_proto_rawDesc, 1165 NumEnums: 1, 1166 NumMessages: 6, 1167 NumExtensions: 0, 1168 NumServices: 0, 1169 }, 1170 GoTypes: file_envoy_api_v2_listener_listener_components_proto_goTypes, 1171 DependencyIndexes: file_envoy_api_v2_listener_listener_components_proto_depIdxs, 1172 EnumInfos: file_envoy_api_v2_listener_listener_components_proto_enumTypes, 1173 MessageInfos: file_envoy_api_v2_listener_listener_components_proto_msgTypes, 1174 }.Build() 1175 File_envoy_api_v2_listener_listener_components_proto = out.File 1176 file_envoy_api_v2_listener_listener_components_proto_rawDesc = nil 1177 file_envoy_api_v2_listener_listener_components_proto_goTypes = nil 1178 file_envoy_api_v2_listener_listener_components_proto_depIdxs = nil 1179} 1180