istio: Index | Files | Directories

package networking

import ""


Package Files



const (
    // ListenerProtocolUnknown is an unknown type of listener.
    ListenerProtocolUnknown = iota
    // ListenerProtocolTCP is a TCP listener.
    // ListenerProtocolHTTP is an HTTP listener.
    // ListenerProtocolThrift is a Thrift listener.
    // ListenerProtocolAuto enables auto protocol detection
const (
    NoTunnelTypeName = "notunnel"
    H2TunnelTypeName = "H2Tunnel"

type FilterChain Uses

type FilterChain struct {
    // FilterChainMatch is the match used to select the filter chain.
    FilterChainMatch *listener.FilterChainMatch
    // TLSContext is the TLS settings for this filter chains.
    TLSContext *tls.DownstreamTlsContext
    // ListenerFilters are the filters needed for the whole listener, not particular to this
    // filter chain.
    ListenerFilters []*listener.ListenerFilter
    // ListenerProtocol indicates whether this filter chain is for HTTP or TCP
    // Note that HTTP filter chains can also have network filters
    ListenerProtocol ListenerProtocol
    // IstioMutualGateway is set only when this filter chain is part of a Gateway, and
    // the Server corresponding to this filter chain is doing TLS termination with ISTIO_MUTUAL as the TLS mode.
    // This allows the authN plugin to add the istio_authn filter to gateways in addition to sidecars.
    IstioMutualGateway bool

    // HTTP is the set of HTTP filters for this filter chain
    HTTP []*http_conn.HttpFilter
    // Thrift is the set of Thrift filters for this filter chain
    Thrift []*thrift_proxy.ThriftFilter
    // TCP is the set of network (TCP) filters for this filter chain.
    TCP []*listener.Filter
    // IsFallthrough indicates if the filter chain is fallthrough.
    IsFallThrough bool

FilterChain describes a set of filters (HTTP or TCP) with a shared TLS context.

type ListenerProtocol Uses

type ListenerProtocol int

ListenerProtocol is the protocol associated with the listener.

func ModelProtocolToListenerProtocol Uses

func ModelProtocolToListenerProtocol(p protocol.Instance,
    trafficDirection core.TrafficDirection) ListenerProtocol

ModelProtocolToListenerProtocol converts from a config.Protocol to its corresponding plugin.ListenerProtocol

type MutableObjects Uses

type MutableObjects struct {
    // Listener is the listener being built. Must be initialized before Plugin methods are called.
    Listener *listener.Listener

    // FilterChains is the set of filter chains that will be attached to Listener.
    FilterChains []FilterChain

MutableObjects is a set of objects passed to On*Listener callbacks. Fields may be nil or empty. Any lists should not be overridden, but rather only appended to. Non-list fields may be mutated; however it's not recommended to do this since it can affect other plugins in the chain in unpredictable ways.

type TunnelAbility Uses

type TunnelAbility int

func MakeTunnelAbility Uses

func MakeTunnelAbility(ttypes ...TunnelType) TunnelAbility

func (TunnelAbility) SupportH2Tunnel Uses

func (t TunnelAbility) SupportH2Tunnel() bool

type TunnelType Uses

type TunnelType int
const (
    // Bind the no tunnel support to a name.
    NoTunnel TunnelType = 0
    // Enumeration of tunnel type below. Each type should own a unique bit field.
    H2Tunnel TunnelType = 1 << 0

func (TunnelType) ToString Uses

func (t TunnelType) ToString() string


core/v1alpha3/loadbalancerpackages used for load balancer setting
plugin/registryPackage registry represents a registry of plugins that can be used by a config generator.

Package networking imports 7 packages (graph) and is imported by 17 packages. Updated 2021-01-25. Refresh now. Tools for package owners.