networkv3

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 8, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_matching_common_inputs_network_v3_network_inputs_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ApplicationProtocolInput

type ApplicationProtocolInput struct {
	// contains filtered or unexported fields
}

List of quoted and comma-separated requested application protocols. The list consists of a single negotiated application protocol once the network stream is established.

Examples:

* “'h2','http/1.1'“ * “'h2c'“

Suggested values in the list include:

  • “http/1.1“ - set by :ref:`envoy.filters.listener.tls_inspector <config_listener_filters_tls_inspector>` and :ref:`envoy.filters.listener.http_inspector <config_listener_filters_http_inspector>`,
  • “h2“ - set by :ref:`envoy.filters.listener.tls_inspector <config_listener_filters_tls_inspector>`
  • “h2c“ - set by :ref:`envoy.filters.listener.http_inspector <config_listener_filters_http_inspector>`

.. attention::

Currently, :ref:`TLS Inspector <config_listener_filters_tls_inspector>` provides
application protocol detection based on the requested
`ALPN <https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation>`_ values.

However, the use of ALPN is pretty much limited to the HTTP/2 traffic on the Internet,
and matching on values other than ``h2`` is going to lead to a lot of false negatives,
unless all connecting clients are known to use ALPN.

[#extension: envoy.matching.inputs.application_protocol]

func (*ApplicationProtocolInput) Descriptor deprecated

func (*ApplicationProtocolInput) Descriptor() ([]byte, []int)

Deprecated: Use ApplicationProtocolInput.ProtoReflect.Descriptor instead.

func (*ApplicationProtocolInput) ProtoMessage

func (*ApplicationProtocolInput) ProtoMessage()

func (*ApplicationProtocolInput) ProtoReflect

func (x *ApplicationProtocolInput) ProtoReflect() protoreflect.Message

func (*ApplicationProtocolInput) Reset

func (x *ApplicationProtocolInput) Reset()

func (*ApplicationProtocolInput) String

func (x *ApplicationProtocolInput) String() string

type DestinationIPInput

type DestinationIPInput struct {
	// contains filtered or unexported fields
}

Specifies that matching should be performed by the destination IP address. [#extension: envoy.matching.inputs.destination_ip]

func (*DestinationIPInput) Descriptor deprecated

func (*DestinationIPInput) Descriptor() ([]byte, []int)

Deprecated: Use DestinationIPInput.ProtoReflect.Descriptor instead.

func (*DestinationIPInput) ProtoMessage

func (*DestinationIPInput) ProtoMessage()

func (*DestinationIPInput) ProtoReflect

func (x *DestinationIPInput) ProtoReflect() protoreflect.Message

func (*DestinationIPInput) Reset

func (x *DestinationIPInput) Reset()

func (*DestinationIPInput) String

func (x *DestinationIPInput) String() string

type DestinationPortInput

type DestinationPortInput struct {
	// contains filtered or unexported fields
}

Specifies that matching should be performed by the destination port. [#extension: envoy.matching.inputs.destination_port]

func (*DestinationPortInput) Descriptor deprecated

func (*DestinationPortInput) Descriptor() ([]byte, []int)

Deprecated: Use DestinationPortInput.ProtoReflect.Descriptor instead.

func (*DestinationPortInput) ProtoMessage

func (*DestinationPortInput) ProtoMessage()

func (*DestinationPortInput) ProtoReflect

func (x *DestinationPortInput) ProtoReflect() protoreflect.Message

func (*DestinationPortInput) Reset

func (x *DestinationPortInput) Reset()

func (*DestinationPortInput) String

func (x *DestinationPortInput) String() string

type DirectSourceIPInput

type DirectSourceIPInput struct {
	// contains filtered or unexported fields
}

Input that matches by the directly connected source IP address (this will only be different from the source IP address when using a listener filter that overrides the source address, such as the :ref:`Proxy Protocol listener filter <config_listener_filters_proxy_protocol>`). [#extension: envoy.matching.inputs.direct_source_ip]

func (*DirectSourceIPInput) Descriptor deprecated

func (*DirectSourceIPInput) Descriptor() ([]byte, []int)

Deprecated: Use DirectSourceIPInput.ProtoReflect.Descriptor instead.

func (*DirectSourceIPInput) ProtoMessage

func (*DirectSourceIPInput) ProtoMessage()

func (*DirectSourceIPInput) ProtoReflect

func (x *DirectSourceIPInput) ProtoReflect() protoreflect.Message

func (*DirectSourceIPInput) Reset

func (x *DirectSourceIPInput) Reset()

func (*DirectSourceIPInput) String

func (x *DirectSourceIPInput) String() string

type DynamicMetadataInput

type DynamicMetadataInput struct {

	// The filter name to retrieve the Struct from the Metadata.
	Filter string `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	// The path to retrieve the Value from the Struct.
	Path []*DynamicMetadataInput_PathSegment `protobuf:"bytes,2,rep,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

Input that matches dynamic metadata by key. DynamicMetadataInput provides a general interface using “filter“ and “path“ to retrieve value from :ref:`Metadata <envoy_v3_api_msg_config.core.v3.Metadata>`.

For example, for the following Metadata:

.. code-block:: yaml

filter_metadata:
  envoy.xxx:
    prop:
      foo: bar
      xyz:
        hello: envoy

The following DynamicMetadataInput will retrieve a string value "bar" from the Metadata.

.. code-block:: yaml

filter: envoy.xxx
path:
- key: prop
- key: foo

[#extension: envoy.matching.inputs.dynamic_metadata]

func (*DynamicMetadataInput) Descriptor deprecated

func (*DynamicMetadataInput) Descriptor() ([]byte, []int)

Deprecated: Use DynamicMetadataInput.ProtoReflect.Descriptor instead.

func (*DynamicMetadataInput) GetFilter

func (x *DynamicMetadataInput) GetFilter() string

func (*DynamicMetadataInput) GetPath

func (*DynamicMetadataInput) ProtoMessage

func (*DynamicMetadataInput) ProtoMessage()

func (*DynamicMetadataInput) ProtoReflect

func (x *DynamicMetadataInput) ProtoReflect() protoreflect.Message

func (*DynamicMetadataInput) Reset

func (x *DynamicMetadataInput) Reset()

func (*DynamicMetadataInput) String

func (x *DynamicMetadataInput) String() string

type DynamicMetadataInput_PathSegment

type DynamicMetadataInput_PathSegment struct {

	// Types that are assignable to Segment:
	//
	//	*DynamicMetadataInput_PathSegment_Key
	Segment isDynamicMetadataInput_PathSegment_Segment `protobuf_oneof:"segment"`
	// contains filtered or unexported fields
}

Specifies the segment in a path to retrieve value from Metadata. Note: Currently it's not supported to retrieve a value from a list in Metadata. This means that if the segment key refers to a list, it has to be the last segment in a path.

func (*DynamicMetadataInput_PathSegment) Descriptor deprecated

func (*DynamicMetadataInput_PathSegment) Descriptor() ([]byte, []int)

Deprecated: Use DynamicMetadataInput_PathSegment.ProtoReflect.Descriptor instead.

func (*DynamicMetadataInput_PathSegment) GetKey

func (*DynamicMetadataInput_PathSegment) GetSegment

func (m *DynamicMetadataInput_PathSegment) GetSegment() isDynamicMetadataInput_PathSegment_Segment

func (*DynamicMetadataInput_PathSegment) ProtoMessage

func (*DynamicMetadataInput_PathSegment) ProtoMessage()

func (*DynamicMetadataInput_PathSegment) ProtoReflect

func (*DynamicMetadataInput_PathSegment) Reset

func (*DynamicMetadataInput_PathSegment) String

type DynamicMetadataInput_PathSegment_Key

type DynamicMetadataInput_PathSegment_Key struct {
	// If specified, use the key to retrieve the value in a Struct.
	Key string `protobuf:"bytes,1,opt,name=key,proto3,oneof"`
}

type FilterStateInput

type FilterStateInput struct {
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// contains filtered or unexported fields
}

Input that matches by a specific filter state key. The value of the provided filter state key will be the raw string representation of the filter state object [#extension: envoy.matching.inputs.filter_state]

func (*FilterStateInput) Descriptor deprecated

func (*FilterStateInput) Descriptor() ([]byte, []int)

Deprecated: Use FilterStateInput.ProtoReflect.Descriptor instead.

func (*FilterStateInput) GetKey

func (x *FilterStateInput) GetKey() string

func (*FilterStateInput) ProtoMessage

func (*FilterStateInput) ProtoMessage()

func (*FilterStateInput) ProtoReflect

func (x *FilterStateInput) ProtoReflect() protoreflect.Message

func (*FilterStateInput) Reset

func (x *FilterStateInput) Reset()

func (*FilterStateInput) String

func (x *FilterStateInput) String() string

type ServerNameInput

type ServerNameInput struct {
	// contains filtered or unexported fields
}

Input that matches by the requested server name (e.g. SNI in TLS).

:ref:`TLS Inspector <config_listener_filters_tls_inspector>` provides the requested server name based on SNI, when TLS protocol is detected. [#extension: envoy.matching.inputs.server_name]

func (*ServerNameInput) Descriptor deprecated

func (*ServerNameInput) Descriptor() ([]byte, []int)

Deprecated: Use ServerNameInput.ProtoReflect.Descriptor instead.

func (*ServerNameInput) ProtoMessage

func (*ServerNameInput) ProtoMessage()

func (*ServerNameInput) ProtoReflect

func (x *ServerNameInput) ProtoReflect() protoreflect.Message

func (*ServerNameInput) Reset

func (x *ServerNameInput) Reset()

func (*ServerNameInput) String

func (x *ServerNameInput) String() string

type SourceIPInput

type SourceIPInput struct {
	// contains filtered or unexported fields
}

Specifies that matching should be performed by the source IP address. [#extension: envoy.matching.inputs.source_ip]

func (*SourceIPInput) Descriptor deprecated

func (*SourceIPInput) Descriptor() ([]byte, []int)

Deprecated: Use SourceIPInput.ProtoReflect.Descriptor instead.

func (*SourceIPInput) ProtoMessage

func (*SourceIPInput) ProtoMessage()

func (*SourceIPInput) ProtoReflect

func (x *SourceIPInput) ProtoReflect() protoreflect.Message

func (*SourceIPInput) Reset

func (x *SourceIPInput) Reset()

func (*SourceIPInput) String

func (x *SourceIPInput) String() string

type SourcePortInput

type SourcePortInput struct {
	// contains filtered or unexported fields
}

Specifies that matching should be performed by the source port. [#extension: envoy.matching.inputs.source_port]

func (*SourcePortInput) Descriptor deprecated

func (*SourcePortInput) Descriptor() ([]byte, []int)

Deprecated: Use SourcePortInput.ProtoReflect.Descriptor instead.

func (*SourcePortInput) ProtoMessage

func (*SourcePortInput) ProtoMessage()

func (*SourcePortInput) ProtoReflect

func (x *SourcePortInput) ProtoReflect() protoreflect.Message

func (*SourcePortInput) Reset

func (x *SourcePortInput) Reset()

func (*SourcePortInput) String

func (x *SourcePortInput) String() string

type SourceTypeInput

type SourceTypeInput struct {
	// contains filtered or unexported fields
}

Input that matches by the source IP type. Specifies the source IP match type. The values include:

* “local“ - matches a connection originating from the same host, [#extension: envoy.matching.inputs.source_type]

func (*SourceTypeInput) Descriptor deprecated

func (*SourceTypeInput) Descriptor() ([]byte, []int)

Deprecated: Use SourceTypeInput.ProtoReflect.Descriptor instead.

func (*SourceTypeInput) ProtoMessage

func (*SourceTypeInput) ProtoMessage()

func (*SourceTypeInput) ProtoReflect

func (x *SourceTypeInput) ProtoReflect() protoreflect.Message

func (*SourceTypeInput) Reset

func (x *SourceTypeInput) Reset()

func (*SourceTypeInput) String

func (x *SourceTypeInput) String() string

type TransportProtocolInput

type TransportProtocolInput struct {
	// contains filtered or unexported fields
}

Input that matches by the transport protocol.

Suggested values include:

  • “raw_buffer“ - default, used when no transport protocol is detected,
  • “tls“ - set by :ref:`envoy.filters.listener.tls_inspector <config_listener_filters_tls_inspector>` when TLS protocol is detected.

[#extension: envoy.matching.inputs.transport_protocol]

func (*TransportProtocolInput) Descriptor deprecated

func (*TransportProtocolInput) Descriptor() ([]byte, []int)

Deprecated: Use TransportProtocolInput.ProtoReflect.Descriptor instead.

func (*TransportProtocolInput) ProtoMessage

func (*TransportProtocolInput) ProtoMessage()

func (*TransportProtocolInput) ProtoReflect

func (x *TransportProtocolInput) ProtoReflect() protoreflect.Message

func (*TransportProtocolInput) Reset

func (x *TransportProtocolInput) Reset()

func (*TransportProtocolInput) String

func (x *TransportProtocolInput) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL