Back to godoc.org
github.com/cilium/cilium

Directory github.com/cilium/cilium

v1.8.2
Latest Go to latest

The latest major version is .

Published: Jul 23, 2020 | License: Apache-2.0 | Module: github.com/cilium/cilium
Path Synopsis
api/v1/client
api/v1/client/daemon
api/v1/client/endpoint
api/v1/client/ipam
api/v1/client/metrics
api/v1/client/policy
api/v1/client/prefilter
api/v1/client/service
api/v1/flow
api/v1/health/client
api/v1/health/client/connectivity
api/v1/health/client/restapi
api/v1/health/models
api/v1/health/server Package server Cilium-Health API Cilium Health Checker Schemes: unix Host: localhost BasePath: /v1beta Version: v1beta Consumes: - application/json Produces: - application/json swagger:meta
api/v1/health/server/restapi
api/v1/health/server/restapi/connectivity
api/v1/models Package models defines all models to be used in the Cilium API.
api/v1/observer
api/v1/peer
api/v1/relay
api/v1/server Package server Cilium API Cilium Schemes: unix Host: localhost BasePath: /v1 Version: v1beta Consumes: - application/json Produces: - application/json swagger:meta
api/v1/server/restapi
api/v1/server/restapi/daemon
api/v1/server/restapi/endpoint
api/v1/server/restapi/ipam
api/v1/server/restapi/metrics
api/v1/server/restapi/policy
api/v1/server/restapi/prefilter
api/v1/server/restapi/service
bugtool
bugtool/cmd
cilium
cilium-health
cilium-health/cmd
cilium-health/launch
cilium-health/responder
cilium/cmd
daemon
daemon/cmd
hubble-relay
hubble-relay/cmd
hubble-relay/cmd/completion
hubble-relay/cmd/serve
hubble-relay/cmd/version
operator
operator/identity
operator/metrics
operator/option
operator/watchers
pkg/addressing
pkg/alignchecker Package alignchecker provides routines to check Go and C struct alignments
pkg/allocator Package allocator provides a kvstore based ID allocator
pkg/annotation
pkg/api Package api provides the Cilium useful helpers for the external API
pkg/api/helpers
pkg/api/metrics
pkg/api/metrics/mock
pkg/aws/ec2
pkg/aws/ec2/mock
pkg/aws/eni Package eni implements AWS ENI allocation logic
pkg/aws/eni/types
pkg/aws/metadata
pkg/aws/types
pkg/azure/api
pkg/azure/api/mock
pkg/azure/ipam Package ipam implements Azure IPAM logic
pkg/azure/types +groupName=azure
pkg/backoff
pkg/bpf Package bpf provides functions that allow golang programs to interact with bpf maps.
pkg/bpf/binary Package binary is a fork of the upstream golang library.
pkg/byteorder Package byteorder provides functions to convert from and to network byte order.
pkg/cgroups
pkg/checker
pkg/cidr
pkg/cleanup
pkg/client
pkg/clustermesh
pkg/clustermesh/types
pkg/command
pkg/command/exec Package exec provides useful wrappers around the standard "exec" library.
pkg/common
pkg/comparator
pkg/completion Package completion implements a variant of sync.WaitGroup that is associated with a context.Context.
pkg/components
pkg/contexthelpers
pkg/controller Package controller provide a simple pattern for async operations that require retries and/or regular intervals.
pkg/counter Package counter provides generic reference counter objects
pkg/crypto/certificatemanager
pkg/crypto/sha1 Package sha1 provides resumable sha1 hashes based on the standard go library.
pkg/datapath Package datapath defines the interfaces to abstract all platform specific datapath components.
pkg/datapath/alignchecker Package alignchecker is a thin wrapper around pkg/alignchecker to validate datapath object alignment.
pkg/datapath/connector Package connector is responsible for the datapath specific plumbing to connect an endpoint to the network
pkg/datapath/fake Package fake is a fake datapath implementation.
pkg/datapath/ipcache Package ipcache provides a BPF datapath implementation of the IPCache store.
pkg/datapath/iptables Package iptables manages iptables-related configuration for Cilium.
pkg/datapath/link Package link provides the Cilium specific abstraction and useful helpers to manage network interfaces
pkg/datapath/linux Package linux implements the Linux specific datapath implementation
pkg/datapath/linux/config
pkg/datapath/linux/ipsec Package ipsec provides the Linux datpaath specific abstraction and useful helpers to manage IPSec via Linux xfrm.
pkg/datapath/linux/linux_defaults Package linux_defaults provides the Linux datapath defaults
pkg/datapath/linux/probes Package probes provides BPF features checks based on bpftool.
pkg/datapath/linux/route Package route provides the Cilium specific abstraction and useful helpers to manage network routes
pkg/datapath/linux/routing
pkg/datapath/loader Package loader provides accessors to compilation and BPF load routines necessary for creating datapath objects and attaching them to links.
pkg/datapath/loader/metrics
pkg/datapath/maps Package maps performs various lifecycle operations related to maps in the datapath.
pkg/datapath/option
pkg/datapath/prefilter Package prefilter provides a means of configuring XDP pre-filters for DDoS-mitigation.
pkg/debug
pkg/defaults
pkg/elf Package elf provides utility functions for manipulating ELF files on the filesystem.
pkg/endpoint
pkg/endpoint/id
pkg/endpoint/regeneration
pkg/endpointmanager Package endpointmanager manages the list of all local endpoints
pkg/endpointmanager/idallocator
pkg/envoy
pkg/envoy/xds Package xds is an implementation of Envoy's xDS (Discovery Service) protocol.
pkg/eventqueue Package eventqueue implements a queue-based system for event processing in a generic fashion in a first-in, first-out manner.
pkg/flowdebug
pkg/fqdn Package fqdn handles some of the DNS-based policy functions: - A DNS lookup cache used to populate toFQDNs rules in the policy layer.
pkg/fqdn/dnsproxy
pkg/fqdn/matchpattern
pkg/health/client
pkg/health/defaults
pkg/health/probe
pkg/health/probe/responder
pkg/health/server
pkg/hubble/api/v1
pkg/hubble/container
pkg/hubble/defaults
pkg/hubble/filters
pkg/hubble/k8s
pkg/hubble/listener
pkg/hubble/math
pkg/hubble/metrics
pkg/hubble/metrics/api
pkg/hubble/metrics/dns
pkg/hubble/metrics/drop
pkg/hubble/metrics/flow
pkg/hubble/metrics/http
pkg/hubble/metrics/icmp
pkg/hubble/metrics/port-distribution
pkg/hubble/metrics/tcp
pkg/hubble/observer
pkg/hubble/observer/observeroption
pkg/hubble/parser
pkg/hubble/parser/errors
pkg/hubble/parser/getters
pkg/hubble/parser/options
pkg/hubble/parser/seven
pkg/hubble/parser/threefour
pkg/hubble/peer
pkg/hubble/peer/serviceoption
pkg/hubble/peer/types
pkg/hubble/relay
pkg/hubble/relay/pool
pkg/hubble/relay/queue
pkg/hubble/relay/relayoption
pkg/hubble/server
pkg/hubble/server/serveroption
pkg/hubble/testutils
pkg/iana
pkg/identity Package identity contains code for managing security identities in Cilium.
pkg/identity/cache
pkg/identity/identitymanager Package identitymanager tracks which global identities are being used by the currently running cilium-agent
pkg/identity/model
pkg/idpool
pkg/ip Package ip is a library for performing manipulations on IPv4 and IPv6 addresses and CIDR prefixes.
pkg/ipam Package ipam handles address allocation management
pkg/ipam/allocator
pkg/ipam/allocator/aws
pkg/ipam/allocator/azure
pkg/ipam/allocator/operator
pkg/ipam/allocator/podcidr
pkg/ipam/metrics
pkg/ipam/metrics/mock
pkg/ipam/option
pkg/ipam/types +groupName=ipam
pkg/ipcache Package ipcache provides a local cache of the mapping of IPs of endpoints managed by Cilium to their corresponding security identities.
pkg/ipcache/fake
pkg/ipcache/types
pkg/ipmasq
pkg/k8s Package k8s abstracts all Kubernetes specific behaviour Package k8s abstracts all Kubernetes specific behaviour Package k8s contains all k8s related logic.
pkg/k8s/apis/cilium.io
pkg/k8s/apis/cilium.io/utils
pkg/k8s/apis/cilium.io/v2 Package v2 is the v2 version of the API.
pkg/k8s/apis/cilium.io/v2/client
pkg/k8s/apis/cilium.io/v2/validator
pkg/k8s/client/clientset/versioned This package has the automatically generated clientset.
pkg/k8s/client/clientset/versioned/fake This package has the automatically generated fake clientset.
pkg/k8s/client/clientset/versioned/scheme This package contains the scheme of the automatically generated clientset.
pkg/k8s/client/clientset/versioned/typed/cilium.io/v2 This package has the automatically generated typed clients.
pkg/k8s/client/clientset/versioned/typed/cilium.io/v2/fake Package fake has the automatically generated clients.
pkg/k8s/client/informers/externalversions
pkg/k8s/client/informers/externalversions/cilium.io
pkg/k8s/client/informers/externalversions/cilium.io/v2
pkg/k8s/client/informers/externalversions/internalinterfaces
pkg/k8s/client/listers/cilium.io/v2
pkg/k8s/config
pkg/k8s/constants
pkg/k8s/identitybackend
pkg/k8s/informer
pkg/k8s/metrics
pkg/k8s/slim/k8s/apis/core/v1 Package types contains slimmer versions of k8s types.
pkg/k8s/slim/k8s/apis/discovery/v1beta1 Package types contains slimmer versions of k8s types.
pkg/k8s/slim/k8s/apis/labels Package labels implements a simple label system, parsing and matching selectors with sets of labels.
pkg/k8s/slim/k8s/apis/meta/v1 Package types contains slimmer versions of k8s types.
pkg/k8s/slim/k8s/apis/meta/v1/validation
pkg/k8s/slim/k8s/apis/networking/v1 Package types contains slimmer versions of k8s types.
pkg/k8s/slim/k8s/apis/selection
pkg/k8s/slim/k8s/apis/util/intstr Package types contains slimmer versions of k8s types.
pkg/k8s/slim/k8s/client/clientset/versioned This package has the automatically generated clientset.
pkg/k8s/slim/k8s/client/clientset/versioned/fake This package has the automatically generated fake clientset.
pkg/k8s/slim/k8s/client/clientset/versioned/scheme This package contains the scheme of the automatically generated clientset.
pkg/k8s/slim/k8s/client/clientset/versioned/typed/core/v1 This package has the automatically generated typed clients.
pkg/k8s/slim/k8s/client/clientset/versioned/typed/core/v1/fake Package fake has the automatically generated clients.
pkg/k8s/slim/k8s/client/clientset/versioned/typed/discovery/v1beta1 This package has the automatically generated typed clients.
pkg/k8s/slim/k8s/client/clientset/versioned/typed/discovery/v1beta1/fake Package fake has the automatically generated clients.
pkg/k8s/slim/k8s/client/clientset/versioned/typed/networking/v1 This package has the automatically generated typed clients.
pkg/k8s/slim/k8s/client/clientset/versioned/typed/networking/v1/fake Package fake has the automatically generated clients.
pkg/k8s/slim/k8s/clientset
pkg/k8s/types Package types contains slimmer versions of k8s types.
pkg/k8s/utils
pkg/k8s/version Package version keeps track of the Kubernetes version the client is connected to
pkg/k8s/watchers
pkg/kafka Package kafka provides a library to parse Kafka requests and responses and apply policy rules
pkg/kvstore Package kvstore abstracts KVstore access and provides a high level API to atomically manage cluster wide resources
pkg/kvstore/allocator Package allocator provides a kvstore based ID allocator
pkg/kvstore/store Package store implements a shared store backed by a kvstore or similar with the following properties: * A single type is used to represent all keys * Any number of collaborators can join the store.
pkg/labels Package api defines the API of the Cilium network policy interface
pkg/labels/cidr Package cidr provides helper methods for generating labels for CIDRs which are partially derived from node state.
pkg/labels/model
pkg/labelsfilter
pkg/launcher
pkg/loadbalancer Package loadbalancer contains all logic related with the loadbalancer +groupName=pkg
pkg/loadinfo Package loadinfo provides the ability to log system load information either at a particular time or periodically in the background
pkg/lock
pkg/logging
pkg/logging/logfields Package logfields defines common logging fields which are used across packages
pkg/mac
pkg/maps/callsmap Package callsmap represents the internal calls map for endpoint and host datapaths.
pkg/maps/cidrmap
pkg/maps/ctmap +groupName=maps
pkg/maps/ctmap/gc
pkg/maps/encrypt Package encrypt represents the nodes current encryption state.
pkg/maps/eppolicymap Package eppolicymap represents the map from an endpoint ID to its policy map.
pkg/maps/eventsmap Package eventsmap represents the perf event map used by the datapath to send events to the Cilium agent.
pkg/maps/fragmap Package fragmap represents the BPF map used to associate IPv4 datagram fragments to the L4 ports of the datagram they belong to, in order to retrieve the full 5-tuple necessary to do L4-based lookups.
pkg/maps/ipcache +groupName=maps
pkg/maps/ipmasq
pkg/maps/lbmap +groupName=maps
pkg/maps/lxcmap Package lxcmap represents the endpoints BPF map in the BPF programs.
pkg/maps/metricsmap Package metricsmap represents the BPF metrics map in the BPF programs.
pkg/maps/nat Package nat implements the BPF NAT map interaction code.
pkg/maps/neighborsmap Package neighborsmap represents the map that stores IP to mac address mappings for NodePort clients.
pkg/maps/policymap +groupName=maps
pkg/maps/signalmap Package signalmap represents the perf event map used to signal potential congestion to Cilium agent.
pkg/maps/sockmap Package Sockmap represents the map from 5-tuple to the socket.
pkg/maps/tunnel +groupName=maps
pkg/math
pkg/metrics Package metrics holds prometheus metrics objects and related utility functions.
pkg/modules Package modules contains a manager of loaded modules which supports search operation.
pkg/monitor
pkg/monitor/agent
pkg/monitor/agent/listener
pkg/monitor/alignchecker Package alignchecker is a thin wrapper around pkg/alignchecker to validate monitor object alignment.
pkg/monitor/api
pkg/monitor/format Package format provides stdout formatting of monitor messages for reuse by command-line clients of the monitor event channel.
pkg/monitor/notifications
pkg/monitor/payload
pkg/mountinfo
pkg/mtu Package mtu is a library for tracking and configuring MTU for devices and routes.
pkg/netns Package netns contains various utility functions to work with network namespaces
pkg/node Package node provides functionality related to the local and remote node addresses
pkg/node/addressing
pkg/node/manager
pkg/node/store
pkg/node/types
pkg/nodediscovery
pkg/option
pkg/option/fake
pkg/pidfile
pkg/policy
pkg/policy/api Package api defines the API of the Cilium network policy interface +groupName=policy
pkg/policy/groups
pkg/policy/groups/aws
pkg/policy/trace
pkg/policy/trafficdirection package trafficdirection specifies the directionality of policy in a numeric representation.
pkg/pprof Package pprof enables use of pprof in Cilium
pkg/probe Package probe provides a collection of kernel-side BPF feature probes.
pkg/proxy
pkg/proxy/accesslog
pkg/proxy/logger Package logger provides the accesslog logging logic for all proxies
pkg/rand
pkg/rate Package rate provides a rate limiter to rate limit requests that can be burstable but they should only allowed N per a period defined.
pkg/revert
pkg/safetime Package safetime contains a wrapper function for time.Since to deal with negative durations.
pkg/serializer
pkg/service
pkg/service/healthserver
pkg/service/store
pkg/set Package set contains a function for performing a subset check for slices.
pkg/signal Package signal provides handling notifications from perf RB signal map.
pkg/sockops
pkg/source
pkg/spanstat Package spanstat provides a mechanism to measure duration of multiple spans and add them up to a total duration
pkg/status
pkg/sysctl Package sysctl allows to change kernel parameters at runtime.
pkg/testutils
pkg/testutils/allocator
pkg/trigger Package trigger provides a mechanism to trigger actions that require to be serialized while providing a non-blocking notification mechanism
pkg/tuple Package tuple defines keys used for connection tuples in multiple BPF maps.
pkg/types
pkg/u8proto
pkg/uuid
pkg/version
pkg/versioncheck Package versioncheck provides utility wrappers for go-version, allowing the constraints to be used as global variables.
plugins/cilium-cni
plugins/cilium-cni/chaining/api
plugins/cilium-cni/chaining/awscni
plugins/cilium-cni/chaining/azure
plugins/cilium-cni/chaining/flannel
plugins/cilium-cni/chaining/generic-veth
plugins/cilium-cni/chaining/portmap
plugins/cilium-cni/types
plugins/cilium-docker
plugins/cilium-docker/driver
proxylib
proxylib/accesslog
proxylib/cassandra
proxylib/memcached
proxylib/memcached/binary
proxylib/memcached/meta
proxylib/memcached/text
proxylib/npds
proxylib/proxylib
proxylib/r2d2
proxylib/test
proxylib/testparsers
test/config
test/ginkgo-ext
test/helpers
test/helpers/constants
test/helpers/logutils
test/helpers/policygen
test/k8sT
test/k8sT/manifests/externalIPs
test/logger
test/runtime
tools/alignchecker
tools/maptool