core

package
v0.0.0-...-d92e82c Latest Latest
Warning

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

Go to latest
Published: May 6, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Egress        = 1
	Ingress       = 2
	EgressIngress = 3
)

discovery mode type

Variables

View Source
var DNSToIPs map[string][]string

DNSToIPs map

View Source
var DiscoveryMode int

DiscoveryMode int

View Source
var ExposedSCTPPorts = []int{}

ExposedSCTPPorts ...

View Source
var ExposedTCPPorts = []int{}

ExposedTCPPorts ...

View Source
var ExposedUDPPorts = []int{}

ExposedUDPPorts ...

View Source
var HTTPUrlThreshold int = 3

HTTPUrlThreshold int

View Source
var LabeledSrcsPerDst map[string]LabeledSrcsPerDstMap

LabeledSrcsPerDst map --> key: namespace, value: LabeledSrcsPerDstMap

View Source
var MergedSrcPerMergedDstForHTTP map[string][]*HTTPDst

MergedSrcPerMergedDstForHTTP ...

View Source
var NetworkLogFrom string

NetworkLogFrom string

View Source
var StopChan chan struct{}

StopChan Channel

WaitG Handler

View Source
var WildPathChar string = "/.+"

WildPathChar ...

View Source
var WildPathCharLeaf string = "/.[^/]+"

WildPathCharLeaf ...

View Source
var WildPathDigit string = "/[0-9]+"

WildPathDigit ...

View Source
var WildPathDigitLeaf string = "/[0-9^/]+"

WildPathDigitLeaf ...

View Source
var WildPaths []string

WildPaths ...

Functions

func AggregateHTTPRules

func AggregateHTTPRules(mergedSrcPerMergedDst map[string][]MergedPortDst)

AggregateHTTPRules function

func AggregatePaths

func AggregatePaths(treeMap map[string]*Node, paths []string) []string

AggregatePaths ...

func DeduplicatePolicies

func DeduplicatePolicies(existingPolicies []types.KnoxNetworkPolicy, discoveredPolicies []types.KnoxNetworkPolicy, dnsToIPs map[string][]string) []types.KnoxNetworkPolicy

DeduplicatePolicies function

func DiscoverNetworkPolicies

func DiscoverNetworkPolicies(
	namespace string,
	cidrBits int,
	networkLogs []types.NetworkLog,
	services []types.Service,
	endpoints []types.Endpoint,
	pods []types.Pod) []types.KnoxNetworkPolicy

DiscoverNetworkPolicies Function

func GetDomainNameFromMap

func GetDomainNameFromMap(ipAddr string, dnsToIPs map[string][]string) string

GetDomainNameFromMap function

func GetFQDNFromDomainName

func GetFQDNFromDomainName(domainName string, fqdnPolicies []types.KnoxNetworkPolicy) (types.KnoxNetworkPolicy, bool)

GetFQDNFromDomainName function

func GetLastedFQDNPolicy

func GetLastedFQDNPolicy(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetLastedFQDNPolicy function

func GetLastedHTTPPolicy

func GetLastedHTTPPolicy(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetLastedHTTPPolicy function

func GetLatestCIDRPolicy

func GetLatestCIDRPolicy(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetLatestCIDRPolicy function

func GetLatestEntityPolicy

func GetLatestEntityPolicy(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetLatestEntityPolicy function

func GetLatestMatchLabelsPolicy

func GetLatestMatchLabelsPolicy(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetLatestMatchLabelsPolicy function

func GetLatestServicePolicy

func GetLatestServicePolicy(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetLatestServicePolicy function

func GetToFQDNsFromNewDiscoveredPolicies

func GetToFQDNsFromNewDiscoveredPolicies(policy types.KnoxNetworkPolicy, newPolicies []types.KnoxNetworkPolicy) []types.KnoxNetworkPolicy

GetToFQDNsFromNewDiscoveredPolicies function

func HandleErr

func HandleErr()

HandleErr Function

func HandleErrRet

func HandleErrRet(ret *bool)

HandleErrRet Function

func IsExistingPolicy

func IsExistingPolicy(existingPolicies []types.KnoxNetworkPolicy, newPolicy types.KnoxNetworkPolicy) bool

IsExistingPolicy function

func ReplaceDuplcatedName

func ReplaceDuplcatedName(existingPolicies []types.KnoxNetworkPolicy, policy types.KnoxNetworkPolicy) types.KnoxNetworkPolicy

ReplaceDuplcatedName function

func StartCronJob

func StartCronJob()

StartCronJob function

func StartToDiscoverNetworkPolicies

func StartToDiscoverNetworkPolicies()

StartToDiscoverNetworkPolicies function

func UpdateEntity

func UpdateEntity(newPolicy types.KnoxNetworkPolicy, existingPolicies []types.KnoxNetworkPolicy) (types.KnoxNetworkPolicy, bool)

UpdateEntity function

func UpdateHTTP

func UpdateHTTP(newPolicy types.KnoxNetworkPolicy, existingPolicies []types.KnoxNetworkPolicy) (types.KnoxNetworkPolicy, bool)

UpdateHTTP function

func UpdateLabeledSrcsPerDst

func UpdateLabeledSrcsPerDst(labeledSrcsPerDst map[Dst][]SrcSimple) map[Dst][]SrcSimple

UpdateLabeledSrcsPerDst function

func UpdateMatchLabels

func UpdateMatchLabels(newPolicy types.KnoxNetworkPolicy, existingPolicies []types.KnoxNetworkPolicy) (types.KnoxNetworkPolicy, bool)

UpdateMatchLabels function

func UpdateService

func UpdateService(newPolicy types.KnoxNetworkPolicy, existingPolicies []types.KnoxNetworkPolicy) (types.KnoxNetworkPolicy, bool)

UpdateService function

func UpdateToPorts

func UpdateToPorts(newPolicy types.KnoxNetworkPolicy, existingPolicies []types.KnoxNetworkPolicy) (types.KnoxNetworkPolicy, bool)

UpdateToPorts function

Types

type Dst

type Dst struct {
	Namespace   string
	PodName     string
	Additional  string
	MatchLabels string
	Protocol    int
	DstPort     int

	Action string
}

Dst Structure

type DstSimple

type DstSimple struct {
	Namespace  string
	PodName    string
	Additional string

	Action string
}

DstSimple Structure

type HTTPDst

type HTTPDst struct {
	Namespace   string
	MatchLabels string
	ToPorts     []types.SpecPort
	HTTPTree    map[string]map[string]*Node
}

HTTPDst Structure

type LabelCount

type LabelCount struct {
	Label string
	Count float64
}

LabelCount Structure

type LabeledSrcsPerDstMap

type LabeledSrcsPerDstMap map[Dst][]SrcSimple

LabeledSrcsPerDstMap map --> key: simple Dst, value: simple Src

type MergedNode

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

MergedNode ...

type MergedPortDst

type MergedPortDst struct {
	Namespace   string
	PodName     string
	Additionals []string
	MatchLabels string
	ToPorts     []types.SpecPort
	HTTPTree    map[string]*Node

	Action string
}

MergedPortDst Structure

type Node

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

Node ...

type SrcSimple

type SrcSimple struct {
	Namespace   string
	PodName     string
	MatchLabels string
}

SrcSimple Structure

Jump to

Keyboard shortcuts

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