istio.io/istio@v0.0.0-20240520182934-d79c90f27776/tools/istio-iptables/pkg/log/command.go (about)

     1  // Copyright Istio Authors
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  package log
    16  
    17  type Command struct {
    18  	// Short identifier that shows up in NFLOG output. Must be less than 64 characters
    19  	Identifier string
    20  	Comment    string
    21  }
    22  
    23  var (
    24  	JumpInbound             = Command{"JumpInbound", "direct all traffic through ISTIO_INBOUND chain"}
    25  	JumpOutbound            = Command{"JumpOutbound", "direct all traffic through ISTIO_OUTBOUND chain"}
    26  	ExcludeInboundPort      = Command{"ExcludeInboundPort", "exclude inbound port from capture"}
    27  	IncludeInboundPort      = Command{"IncludeInboundPort", "include inbound port for capture"}
    28  	InboundCapture          = Command{"InboundCapture", "redirect inbound request to proxy"}
    29  	KubevirtCommand         = Command{"KubevirtCommand", "Kubevirt outbound redirect"}
    30  	ExcludeInterfaceCommand = Command{"ExcludeInterfaceCommand", "Excluded interface"}
    31  	UndefinedCommand        = Command{"UndefinedCommand", ""}
    32  )
    33  
    34  var IDToCommand = map[string]Command{
    35  	"JumpInbound":             JumpInbound,
    36  	"JumpOutbound":            JumpOutbound,
    37  	"ExcludeInboundPort":      ExcludeInboundPort,
    38  	"IncludeInboundPort":      IncludeInboundPort,
    39  	"InboundCapture":          InboundCapture,
    40  	"KubevirtCommand":         KubevirtCommand,
    41  	"ExcludeInterfaceCommand": ExcludeInterfaceCommand,
    42  	"UndefinedCommand":        UndefinedCommand,
    43  }