Documentation ¶
Index ¶
- Constants
- Variables
- func DumpDotFile(g Graph)
- func NewBreadthFirst(visit func(u, v Node), filter func(e Edge) bool) *traverse.BreadthFirst
- func NewDepthFirst(visit func(u, v Node), filter func(e Edge) bool) *traverse.DepthFirst
- type Adapter
- type AdapterNode
- type AdapterTable
- type BpfAdapter
- func (adapter *BpfAdapter) Close()
- func (adapter *BpfAdapter) Config() map[string]interface{}
- func (adapter *BpfAdapter) FD() int
- func (adapter *BpfAdapter) Init() error
- func (adapter *BpfAdapter) Name() string
- func (adapter *BpfAdapter) Perm() uint
- func (adapter *BpfAdapter) SetConfig(req api.ModuleBase, g Graph, id int) error
- func (adapter *BpfAdapter) Table(name string) AdapterTable
- func (adapter *BpfAdapter) Tables() []map[string]interface{}
- func (adapter *BpfAdapter) Tags() []string
- func (adapter *BpfAdapter) Type() string
- func (adapter *BpfAdapter) UUID() string
- type BridgeAdapter
- func (ba *BridgeAdapter) Close()
- func (ba *BridgeAdapter) Config() map[string]interface{}
- func (ba *BridgeAdapter) FD() int
- func (ba *BridgeAdapter) Name() string
- func (ba *BridgeAdapter) Perm() uint
- func (ba *BridgeAdapter) SetConfig(req api.ModuleBase, g Graph, id int) error
- func (ba *BridgeAdapter) Table(name string) AdapterTable
- func (ba *BridgeAdapter) Tables() []map[string]interface{}
- func (ba *BridgeAdapter) Tags() []string
- func (ba *BridgeAdapter) Type() string
- func (ba *BridgeAdapter) UUID() string
- type BridgeTable
- func (table *BridgeTable) Config() map[string]interface{}
- func (table *BridgeTable) Delete(key string) error
- func (table *BridgeTable) Get(key string) (interface{}, bool)
- func (table *BridgeTable) ID() string
- func (table *BridgeTable) Iter() <-chan api.ModuleTableEntry
- func (table *BridgeTable) Name() string
- func (table *BridgeTable) Set(key, val string) error
- type DirectedGraph
- func (g *DirectedGraph) AddNode(node graph.Node)
- func (g *DirectedGraph) Copy(src Graph)
- func (g *DirectedGraph) E(u, v graph.Node) Edge
- func (g *DirectedGraph) HasPath(path string) bool
- func (g *DirectedGraph) Node(id int) Node
- func (g *DirectedGraph) NodeByPath(path string) Node
- func (g *DirectedGraph) RemoveEdge(e Edge)
- func (g *DirectedGraph) RemoveNode(node graph.Node)
- func (g *DirectedGraph) SetEdge(e Edge)
- type Edge
- type EdgeChain
- func (e *EdgeChain) ChainEquals(dst []NodeIfc) bool
- func (e *EdgeChain) F() NodeIfc
- func (e *EdgeChain) From() graph.Node
- func (e *EdgeChain) ID() string
- func (e *EdgeChain) IsDeleted() bool
- func (e *EdgeChain) MarkDeleted()
- func (e *EdgeChain) Serialize() [4]int
- func (e *EdgeChain) String() string
- func (e *EdgeChain) T() NodeIfc
- func (e *EdgeChain) To() graph.Node
- func (e *EdgeChain) Update(chain []NodeIfc, fromIfc, toIfc int) bool
- func (e *EdgeChain) Weight() float64
- type Graph
- type Interface
- type Node
- type NodeBase
- func (n *NodeBase) Close()
- func (n *NodeBase) DOTID() string
- func (n *NodeBase) FD() int
- func (n *NodeBase) Groups() *intsets.Sparse
- func (n *NodeBase) ID() int
- func (n *NodeBase) NewInterfaceID() (int, error)
- func (n *NodeBase) Path() string
- func (n *NodeBase) ReleaseInterfaceID(id int)
- func (n *NodeBase) SetFD(fd int)
- func (n *NodeBase) SetID(id int)
- func (n *NodeBase) String() string
- type NodeIfc
Constants ¶
View Source
const ( PermW = 1 << (1 + iota) PermR )
Variables ¶
Functions ¶
func DumpDotFile ¶
func DumpDotFile(g Graph)
func NewBreadthFirst ¶
func NewBreadthFirst(visit func(u, v Node), filter func(e Edge) bool) *traverse.BreadthFirst
func NewDepthFirst ¶
func NewDepthFirst(visit func(u, v Node), filter func(e Edge) bool) *traverse.DepthFirst
Types ¶
type Adapter ¶
type Adapter interface { UUID() string FD() int Close() Type() string Name() string Tags() []string Perm() uint Config() map[string]interface{} SetConfig(req api.ModuleBase, g Graph, id int) error Tables() []map[string]interface{} Table(name string) AdapterTable }
func NewAdapter ¶
type AdapterNode ¶
type AdapterNode struct { NodeBase // contains filtered or unexported fields }
func NewAdapterNode ¶
func NewAdapterNode(adapter Adapter) *AdapterNode
func (*AdapterNode) Adapter ¶
func (n *AdapterNode) Adapter() Adapter
func (*AdapterNode) Close ¶
func (n *AdapterNode) Close()
type AdapterTable ¶
type BpfAdapter ¶
type BpfAdapter struct {
// contains filtered or unexported fields
}
func NewBpfAdapter ¶
func NewBpfAdapter(uuid, name string, b *bpf.BpfModule) *BpfAdapter
func (*BpfAdapter) Close ¶
func (adapter *BpfAdapter) Close()
func (*BpfAdapter) Config ¶
func (adapter *BpfAdapter) Config() map[string]interface{}
func (*BpfAdapter) FD ¶
func (adapter *BpfAdapter) FD() int
func (*BpfAdapter) Init ¶
func (adapter *BpfAdapter) Init() error
func (*BpfAdapter) Name ¶
func (adapter *BpfAdapter) Name() string
func (*BpfAdapter) Perm ¶
func (adapter *BpfAdapter) Perm() uint
func (*BpfAdapter) SetConfig ¶
func (adapter *BpfAdapter) SetConfig(req api.ModuleBase, g Graph, id int) error
func (*BpfAdapter) Table ¶
func (adapter *BpfAdapter) Table(name string) AdapterTable
func (*BpfAdapter) Tables ¶
func (adapter *BpfAdapter) Tables() []map[string]interface{}
func (*BpfAdapter) Tags ¶
func (adapter *BpfAdapter) Tags() []string
func (*BpfAdapter) Type ¶
func (adapter *BpfAdapter) Type() string
func (*BpfAdapter) UUID ¶
func (adapter *BpfAdapter) UUID() string
type BridgeAdapter ¶
type BridgeAdapter struct {
// contains filtered or unexported fields
}
func NewBridgeAdapter ¶
func NewBridgeAdapter(link *netlink.Bridge) *BridgeAdapter
func (*BridgeAdapter) Close ¶
func (ba *BridgeAdapter) Close()
func (*BridgeAdapter) Config ¶
func (ba *BridgeAdapter) Config() map[string]interface{}
func (*BridgeAdapter) FD ¶
func (ba *BridgeAdapter) FD() int
func (*BridgeAdapter) Name ¶
func (ba *BridgeAdapter) Name() string
func (*BridgeAdapter) Perm ¶
func (ba *BridgeAdapter) Perm() uint
func (*BridgeAdapter) SetConfig ¶
func (ba *BridgeAdapter) SetConfig(req api.ModuleBase, g Graph, id int) error
func (*BridgeAdapter) Table ¶
func (ba *BridgeAdapter) Table(name string) AdapterTable
func (*BridgeAdapter) Tables ¶
func (ba *BridgeAdapter) Tables() []map[string]interface{}
func (*BridgeAdapter) Tags ¶
func (ba *BridgeAdapter) Tags() []string
func (*BridgeAdapter) Type ¶
func (ba *BridgeAdapter) Type() string
func (*BridgeAdapter) UUID ¶
func (ba *BridgeAdapter) UUID() string
type BridgeTable ¶
type BridgeTable struct { }
func (*BridgeTable) Config ¶
func (table *BridgeTable) Config() map[string]interface{}
func (*BridgeTable) Delete ¶
func (table *BridgeTable) Delete(key string) error
func (*BridgeTable) Get ¶
func (table *BridgeTable) Get(key string) (interface{}, bool)
func (*BridgeTable) ID ¶
func (table *BridgeTable) ID() string
func (*BridgeTable) Iter ¶
func (table *BridgeTable) Iter() <-chan api.ModuleTableEntry
func (*BridgeTable) Name ¶
func (table *BridgeTable) Name() string
func (*BridgeTable) Set ¶
func (table *BridgeTable) Set(key, val string) error
type DirectedGraph ¶
type DirectedGraph struct { simple.DirectedGraph // contains filtered or unexported fields }
func (*DirectedGraph) AddNode ¶
func (g *DirectedGraph) AddNode(node graph.Node)
func (*DirectedGraph) Copy ¶
func (g *DirectedGraph) Copy(src Graph)
func (*DirectedGraph) HasPath ¶
func (g *DirectedGraph) HasPath(path string) bool
func (*DirectedGraph) Node ¶
func (g *DirectedGraph) Node(id int) Node
func (*DirectedGraph) NodeByPath ¶
func (g *DirectedGraph) NodeByPath(path string) Node
func (*DirectedGraph) RemoveEdge ¶
func (g *DirectedGraph) RemoveEdge(e Edge)
func (*DirectedGraph) RemoveNode ¶
func (g *DirectedGraph) RemoveNode(node graph.Node)
func (*DirectedGraph) SetEdge ¶
func (g *DirectedGraph) SetEdge(e Edge)
type EdgeChain ¶
type EdgeChain struct {
// contains filtered or unexported fields
}
func NewEdgeChain ¶
func (*EdgeChain) ChainEquals ¶
func (*EdgeChain) MarkDeleted ¶
func (e *EdgeChain) MarkDeleted()
type Graph ¶
type NodeBase ¶
type NodeBase struct {
// contains filtered or unexported fields
}
func (*NodeBase) NewInterfaceID ¶
func (*NodeBase) ReleaseInterfaceID ¶
Click to show internal directories.
Click to hide internal directories.