mirror of
https://github.com/yggdrasil-network/yggdrasil-go.git
synced 2025-04-29 14:45:07 +03:00
Start de-debugging
This commit is contained in:
parent
fae00e962f
commit
3847e6afb8
4 changed files with 35 additions and 0 deletions
|
@ -213,6 +213,9 @@ func (a *admin) init(c *Core, listenaddr string) {
|
||||||
}, errors.New("Failed to remove allowed box pub key")
|
}, errors.New("Failed to remove allowed box pub key")
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
func (a *admin) start() {
|
||||||
go a.listen()
|
go a.listen()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,8 @@ package yggdrasil
|
||||||
import "io/ioutil"
|
import "io/ioutil"
|
||||||
import "log"
|
import "log"
|
||||||
import "regexp"
|
import "regexp"
|
||||||
|
import "net"
|
||||||
|
import "yggdrasil/config"
|
||||||
|
|
||||||
type Core struct {
|
type Core struct {
|
||||||
// This is the main data structure that holds everything else for a node
|
// This is the main data structure that holds everything else for a node
|
||||||
|
@ -33,6 +35,29 @@ func (c *Core) Init() {
|
||||||
c.init(bpub, bpriv, spub, spriv)
|
c.init(bpub, bpriv, spub, spriv)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *Core) Run(nc *config.NodeConfig) {
|
||||||
|
var boxPub boxPubKey
|
||||||
|
var boxPriv boxPrivKey
|
||||||
|
var sigPub sigPubKey
|
||||||
|
var sigPriv sigPrivKey
|
||||||
|
copy(boxPub[:], nc.EncryptionPublicKey)
|
||||||
|
copy(boxPriv[:], nc.EncryptionPrivateKey)
|
||||||
|
copy(sigPub[:], nc.SigningPublicKey)
|
||||||
|
copy(sigPriv[:], nc.SigningPrivateKey)
|
||||||
|
|
||||||
|
c.init(&boxPub, &boxPriv, &sigPub, &sigPriv)
|
||||||
|
|
||||||
|
c.udp.init(c, nc.Listen)
|
||||||
|
c.tcp.init(c, nc.Listen)
|
||||||
|
c.admin.init(c, nc.AdminListen)
|
||||||
|
|
||||||
|
c.multicast.start()
|
||||||
|
c.router.start()
|
||||||
|
c.switchTable.start()
|
||||||
|
c.tun.setup(nc.IfName, nc.IfTAPMode, net.IP(c.router.addr[:]).String(), nc.IfMTU)
|
||||||
|
c.admin.start()
|
||||||
|
}
|
||||||
|
|
||||||
func (c *Core) init(bpub *boxPubKey,
|
func (c *Core) init(bpub *boxPubKey,
|
||||||
bpriv *boxPrivKey,
|
bpriv *boxPrivKey,
|
||||||
spub *sigPubKey,
|
spub *sigPubKey,
|
||||||
|
|
|
@ -64,6 +64,10 @@ func (r *router) init(core *Core) {
|
||||||
r.core.tun.send = send
|
r.core.tun.send = send
|
||||||
r.reset = make(chan struct{}, 1)
|
r.reset = make(chan struct{}, 1)
|
||||||
r.admin = make(chan func())
|
r.admin = make(chan func())
|
||||||
|
// go r.mainLoop()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (r *router) start() {
|
||||||
go r.mainLoop()
|
go r.mainLoop()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -167,6 +167,9 @@ func (t *switchTable) init(core *Core, key sigPubKey) {
|
||||||
t.updater.Store(&sync.Once{})
|
t.updater.Store(&sync.Once{})
|
||||||
t.table.Store(lookupTable{})
|
t.table.Store(lookupTable{})
|
||||||
t.drop = make(map[sigPubKey]int64)
|
t.drop = make(map[sigPubKey]int64)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *switchTable) start() {
|
||||||
doTicker := func() {
|
doTicker := func() {
|
||||||
ticker := time.NewTicker(time.Second)
|
ticker := time.NewTicker(time.Second)
|
||||||
defer ticker.Stop()
|
defer ticker.Stop()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue