1
0
mirror of https://github.com/fumiama/WireGold.git synced 2026-06-26 05:42:17 +08:00
This commit is contained in:
fumiama
2021-12-28 22:34:25 +08:00
parent 644d52f457
commit d751ce41a2
3 changed files with 24 additions and 1 deletions

View File

@@ -79,7 +79,14 @@ func (l *Link) Write(p *head.Packet) (n int, err error) {
d, err = p.Marshal(l.me.me.String(), l.peerip.String())
logrus.Debugln("[link] write data", string(d))
if err == nil {
n, err = l.me.myconn.WriteToUDP(d, l.me.router.NextHop(l.peerip.String()+"/32").endpoint)
peerlink := l.me.router.NextHop(l.peerip.String() + "/32")
if peerlink != nil {
peerep := peerlink.endpoint
logrus.Infoln("[link] write data from ep", l.me.myconn.LocalAddr(), "to", peerep)
n, err = l.me.myconn.WriteToUDP(d, peerep)
} else {
logrus.Warnln("[link] drop packet: nil peerlink")
}
}
return
}

View File

@@ -49,6 +49,8 @@ func (m *Me) AddPeer(peerip string, pubicKey *[32]byte, endPoint string, allowed
if err == nil {
l.allowedips = append(l.allowedips, cidr)
l.me.router.SetItem(cidr, l)
} else {
panic(err)
}
}
}