From 4e6a897a0b55ee533c05f89fa38dbe0704f2798d Mon Sep 17 00:00:00 2001 From: radhitya Date: Sun, 14 Jun 2026 14:36:32 +0700 Subject: dns recursive resolver(iterative, root hints, delegfation, glue, fallback), adblocker, dns cache --- internal/server/server.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'internal/server/server.go') diff --git a/internal/server/server.go b/internal/server/server.go index 3114073..e0490bd 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -8,18 +8,23 @@ import ( "github.com/miekg/dns" "sdns/internal/resolver" + "sdns/internal/blocklist" + "sdns/internal/cache" ) type Server struct { logger *slog.Logger resolver *resolver.Resolver + cache *cache.Cache + blocklist *blocklist.Blocklist udp *dns.Server tcp *dns.Server doh *http.Server } -func New(udpAddr, tcpAddr, dohAddr string, logger *slog.Logger, r *resolver.Resolver) (*Server, error) { - s := &Server{logger: logger, resolver: r} +func New(udpAddr, tcpAddr, dohAddr string, logger *slog.Logger, +r *resolver.Resolver, c *cache.Cache, b *blocklist.Blocklist) (*Server, error) { + s := &Server{logger: logger, resolver: r, cache: c, blocklist: b} mux := dns.NewServeMux() mux.HandleFunc(".", s.handleQuery) -- cgit v1.2.3