refactor: cleanup now uses db
This commit is contained in:
17
cleanup.go
17
cleanup.go
@@ -1,22 +1,13 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
"database/sql"
|
||||
"time"
|
||||
)
|
||||
|
||||
func cleanupLoop(tw *tempWhitelist, d time.Duration) {
|
||||
ticker := time.NewTicker(d)
|
||||
defer ticker.Stop()
|
||||
func cleanupLoop(db *sql.DB, interval time.Duration) {
|
||||
ticker := time.NewTicker(interval)
|
||||
for range ticker.C {
|
||||
now := time.Now()
|
||||
tw.mu.Lock()
|
||||
for ip, entry := range tw.entries {
|
||||
if entry.Expires.Before(now) {
|
||||
slog.Info("expired temporary whitelist", "ip", ip)
|
||||
delete(tw.entries, ip)
|
||||
}
|
||||
}
|
||||
tw.mu.Unlock()
|
||||
_ = CleanupExpiredTemp(db)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user