Add dns cache clearing mechanisms

This commit is contained in:
Daniel
2020-07-16 16:29:25 +02:00
parent c9ba2a939a
commit 53e9d3dd47
4 changed files with 140 additions and 9 deletions

View File

@@ -14,11 +14,15 @@ import (
)
var (
// ClearNameCacheEvent is a triggerable event that clears the name record cache.
ClearNameCacheEvent = "clear name cache"
module *modules.Module
)
func init() {
module = modules.Register("resolver", prep, start, nil, "base", "netenv")
module.RegisterEvent(ClearNameCacheEvent)
}
func prep() error {
@@ -71,6 +75,17 @@ func start() error {
return err
}
// cache clearing
err = module.RegisterEventHook(
"resolver",
ClearNameCacheEvent,
ClearNameCacheEvent,
clearNameCache,
)
if err != nil {
return err
}
module.StartServiceWorker(
"mdns handler",
5*time.Second,