network

package
v0.2.2-rc3 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2020 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ZDBIface is the name of the interface used in the 0-db network namespace
	ZDBIface = "zdb0"
)

Variables

View Source
var ErrNoPubIface = errors.New("no public interface configured for this node")

ErrNoPubIface is the error returns by ReadPubIface when no public interface is configured

Functions

func CreatePublicNS

func CreatePublicNS(iface *types.PubIface, nodeID pkg.Identifier) error

CreatePublicNS creates a public namespace in a node

func NewNetworker

func NewNetworker(identity pkg.IdentityManager, tnodb TNoDB, storageDir string) (pkg.Networker, error)

NewNetworker create a new pkg.Networker that can be used over zbus

func NodeIDv1

func NodeIDv1() (string, error)

NodeIDv1 returns the node ID as it was calculated in 0-OS v1

func ResourceByNodeID

func ResourceByNodeID(nodeID string, resources []pkg.NetResource) (*pkg.NetResource, error)

ResourceByNodeID return the net resource associated with a nodeID

Types

type Farm

type Farm struct {
	ID        string   `json:"farm_id"`
	Name      string   `json:"name"`
	ExitNodes []string `json:"exit_nodes"`
}

Farm hold the ID, name and list of possible exit node of a farm

type TNoDB

type TNoDB interface {
	GetFarm(farm pkg.Identifier) (*Farm, error)

	PublishInterfaces(node pkg.Identifier, ifaces []types.IfaceInfo) error
	GetNode(pkg.Identifier) (*types.Node, error)
	PublishWGPort(node pkg.Identifier, ports []uint) error

	SetPublicIface(node pkg.Identifier, pub *types.PubIface) error
	GetPubIface(node pkg.Identifier) (*types.PubIface, error)
}

TNoDB define the interface to implement to talk to a Tenant Network object database

Directories

Path Synopsis
Package tnodb expose the interface required to talk to a Tenant network object database (TNODB)
Package tnodb expose the interface required to talk to a Tenant network object database (TNODB)

Jump to

Keyboard shortcuts

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