Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ISISAPIServer ¶
type ISISAPIServer struct { api.UnimplementedIsisServiceServer // contains filtered or unexported fields }
func NewISISAPIServer ¶
func NewISISAPIServer(s ISISServer) *ISISAPIServer
NewISISAPIServer creates a new ISIS API Server
func (*ISISAPIServer) GetLSDB ¶
func (s *ISISAPIServer) GetLSDB(context.Context, *api.GetLSDBRequest) (*api.GetLSDBResponse, error)
func (*ISISAPIServer) ListAdjacencies ¶
func (s *ISISAPIServer) ListAdjacencies(context.Context, *api.ListAdjacenciesRequest) (*api.ListAdjacenciesResponse, error)
type ISISServer ¶
type ISISServer interface { AddInterface(*InterfaceConfig) error RemoveInterface(name string) error GetInterfaceNames() []string Start() error GetAdjacencies() []*Adjacency GetLSDB() []*LSDBEntry }
ISISServer is generic ISIS server interface
type InterfaceConfig ¶
type InterfaceConfig struct { Name string Passive bool PointToPoint bool Level1 *InterfaceLevelConfig Level2 *InterfaceLevelConfig // contains filtered or unexported fields }
InterfaceConfig represents a network interfaces ISIS config
type InterfaceLevelConfig ¶
type InterfaceLevelConfig struct { HelloInterval uint16 HoldingTimer uint16 Metric uint32 Passive bool Priority uint8 }
InterfaceLevelConfig is the ISIS level config of an interface
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server represents an ISIS server
func (*Server) AddInterface ¶
func (s *Server) AddInterface(cfg *InterfaceConfig) error
AddInterface adds an interface to the ISIS server
func (*Server) GetAdjacencies ¶
func (*Server) GetInterfaceNames ¶
GetInterfaceNames gets names of all configured interfaces
func (*Server) RemoveInterface ¶
Click to show internal directories.
Click to hide internal directories.