fea: support bgp as external.

This commit is contained in:
Daniel Ding
2025-09-01 17:08:47 +08:00
parent 80ea5c26b4
commit 33518bf8e5
22 changed files with 610 additions and 55 deletions

View File

@@ -125,9 +125,18 @@ type IPSecer interface {
ListTunnels(call func(obj schema.IPSecTunnel))
}
type Bgper interface {
Enable(data schema.Bgp)
Disable()
AddNeighbor(data schema.BgpNeighbor)
DelNeighbor(data schema.BgpNeighbor)
ListNeighbor(call func(obj schema.BgpNeighbor))
}
type APICall struct {
workers map[string]Networker
secer IPSecer
bgper Bgper
workers map[string]Networker
}
func (i *APICall) AddWorker(name string, obj Networker) {
@@ -152,6 +161,14 @@ func (i *APICall) GetIPSecer() IPSecer {
return i.secer
}
func (i *APICall) SetBgper(value Bgper) {
i.bgper = value
}
func (i *APICall) GetBgper() Bgper {
return i.bgper
}
var Call = &APICall{
workers: make(map[string]Networker),
}