diff options
| author | radhitya <alif@radhitya.org> | 2026-06-14 14:36:32 +0700 |
|---|---|---|
| committer | radhitya <alif@radhitya.org> | 2026-06-14 14:36:32 +0700 |
| commit | 4e6a897a0b55ee533c05f89fa38dbe0704f2798d (patch) | |
| tree | 12d9700e53775503ad7ba2beb72bedfc64bdd70d /internal/server/server.go | |
| parent | 3e44adc94f32bfe500730fcbf1c02cedf65b0a30 (diff) | |
dns recursive resolver(iterative, root hints, delegfation, glue, fallback), adblocker, dns cache
Diffstat (limited to 'internal/server/server.go')
| -rw-r--r-- | internal/server/server.go | 9 |
1 files changed, 7 insertions, 2 deletions
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) |
