5
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2024-11-22 21:10:29 +00:00

add callbacks to maintenance map cleanup

This commit is contained in:
Arceliar 2018-11-25 16:29:47 -06:00
parent 12e635f946
commit 9937a6102e

View File

@ -293,6 +293,11 @@ func (t *dht) doMaintenance() {
} }
} }
t.reqs = newReqs t.reqs = newReqs
newCallbacks := make(map[dhtReqKey][]func(*dhtRes), len(t.callbacks))
for key, callback := range t.callbacks {
newCallbacks[key] = callback
}
t.callbacks = newCallbacks
for infoID, info := range t.table { for infoID, info := range t.table {
if now.Sub(info.recv) > time.Minute || info.pings > 3 { if now.Sub(info.recv) > time.Minute || info.pings > 3 {
delete(t.table, infoID) delete(t.table, infoID)